最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
php面試之?dāng)?shù)據(jù)庫 php數(shù)據(jù)庫工程師

程序員面試必備PHP基礎(chǔ)面試題 – 第十一天

一、兩張表 city表和province表。分別為城市與省份的關(guān)系表。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),湯原企業(yè)網(wǎng)站建設(shè),湯原品牌網(wǎng)站建設(shè),網(wǎng)站定制,湯原網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,湯原網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

表名:city

id City Provinceid

1 廣州 1

2 深圳 1

3 惠州 1

4 長沙 2

5 武漢 3

………. 廣州

表名稱:province:

id Province

1 廣東

2 湖南

3 湖北

……….

1、寫一條sql語句關(guān)系兩個(gè)表,實(shí)現(xiàn):顯示城市的基本信息。顯示字段:城市id ,城市名, 所屬省份 。

如:

Id(城市id) Cityname(城市名) Privence(所屬省份)

2、如果要統(tǒng)計(jì)每個(gè)省份有多少個(gè)城市,請(qǐng)用group by 查詢出來。顯示字段:省份id ,省份名,包含多少個(gè)城市。

二、主鍵 和外鍵表示什么?一般用于做什么?

主鍵:能夠唯一表示數(shù)據(jù)表中的每個(gè)記錄的字段或者字段的組合就稱為主鍵。一個(gè)主鍵是唯一識(shí)別一個(gè)表的每一行記錄,但這只是其作用的一療分,主鍵的主要作用是將記錄和存放在其他表中的數(shù)據(jù)進(jìn)行關(guān)聯(lián),在這一點(diǎn)上,主鍵是不同表中各記錄間的簡單指針,主鍵約整就是確定表中的每一條記錄,主鍵不能是空值,唯一約束是用于指定一個(gè)或多個(gè)列的組合值具有唯一性,以防止在列中輸入重復(fù)的值,所以,主鍵的值對(duì)用戶而言是沒有什么意義,并且和它賦予的值也沒有什么特別聯(lián)系。

外鍵:若有兩個(gè)表A,B,C是A的主鍵,而B中也有C字段,則C就是表B的外鍵,外鍵約束主要用來維護(hù)兩個(gè)表之間數(shù)據(jù)的一致性。A為基本表,B為信息表。

在數(shù)據(jù)庫中,常常不只是一個(gè)表,這些表之間也不是相互獨(dú)立的,不同的表之間需要建立一種關(guān)系,才能將它們的數(shù)據(jù)相互溝通,而在這個(gè)溝通過程中,就需要表中有一個(gè)字段作為標(biāo)志,不同的記錄對(duì)應(yīng)的字段取值不能相同,也不能是空白的,通過這個(gè)字段中不同的值可以區(qū)別各條記錄,就像我們區(qū)別不同的人,每個(gè)人都有名字,但它卻不能作為主鍵,因?yàn)槿嗣苋菀壮霈F(xiàn)重復(fù),而身份證號(hào)是每個(gè)人都不同的,所以可以根據(jù)它來區(qū)別不同的人,數(shù)據(jù)庫的表中作為主鍵的段段就要像人的身份證號(hào)一樣,必須是每個(gè)記錄的值都不同,這才能根據(jù)

主鍵的值來確定不同的記錄。

關(guān)系:外鍵一定是另外某個(gè)表的主鍵。

三、select now(),Date_ADD(now(),INTERVAL 14 day),Date_SUB(now(),INTERVAL 3 Day) from table; 會(huì)獲得什么內(nèi)容,請(qǐng)寫出來。

會(huì)獲得三條數(shù)據(jù):

第一條:當(dāng)前時(shí)間;

第二條:當(dāng)前時(shí)間加上14天;

第三條:當(dāng)前時(shí)間減去3天。

四、您所知道的MYSQL 數(shù)據(jù)庫備份,還原方式有哪幾種?

備份:

一,搭建主從架構(gòu),master-slave,通過binlog文件同步復(fù)制主庫的數(shù)據(jù),也可以直接通過binlog文件恢復(fù)數(shù)據(jù)。

二,通過系統(tǒng)計(jì)劃任務(wù)執(zhí)行mysqldump做周期性全備份。

三,物理備份,直接拷貝數(shù)據(jù)文件、參數(shù)文件、日志文件。

還原:

一.通過mysql操作工具,如phpmyadmin,sqlyog等導(dǎo)入備份過的數(shù)據(jù)庫文件。

二.將物理備份的文件拷貝到mysql的data目錄下

五、內(nèi)容管理系統(tǒng)中,表message有如下字段

id 文章id

title 文章標(biāo)題

content 文章內(nèi)容

category_id 文章分類id

hits 點(diǎn)擊量

創(chuàng)建上表,寫出MySQL語句

六、同樣上述內(nèi)容管理系統(tǒng):表comment記錄用戶回復(fù)內(nèi)容,字段如下

comment_id 回復(fù)id

id 文章id,關(guān)聯(lián)message表中的id

comment_content 回復(fù)內(nèi)容

現(xiàn)通過查詢數(shù)據(jù)庫需要得到以下格式的文章標(biāo)題列表,并按照回復(fù)數(shù)量排序,回復(fù)最高的排在最前面

文章id 文章標(biāo)題 點(diǎn)擊量 回復(fù)數(shù)量

用一個(gè)SQL語句完成上述查詢,如果文章沒有回復(fù)則回復(fù)數(shù)量顯示0

七、內(nèi)容管理系統(tǒng),表category保存分類信息,字段如下

category_id int(4) not null auto_increment;

category_name varchar(40) not null;

用戶輸入文章時(shí),通過選擇下拉菜單選定文章分類

寫出如何實(shí)現(xiàn)這個(gè)下拉菜單

八、PHP文件操作

1、內(nèi)容管理系統(tǒng):用戶提交內(nèi)容后,系統(tǒng)生成靜態(tài)HTML頁面;寫出實(shí)現(xiàn)的基本思路

2、簡單描述用戶修改發(fā)布內(nèi)容的實(shí)現(xiàn)流程和基本思路

1)當(dāng)用戶提交后生成一個(gè)由url地址MD5后的文件的編譯頁面,用文件處理file函數(shù)生成一個(gè)模板合成頁,判斷模板編譯頁是否有,模板頁無或者編譯頁的創(chuàng)建時(shí)間戳小于模板頁的修改時(shí)間都會(huì)從新生成編譯頁面,編譯后的頁面會(huì)調(diào)用對(duì)應(yīng)數(shù)據(jù)庫的值顯示在頁面中,通過對(duì)內(nèi)存數(shù)據(jù)的讀取釋放,顯示出我們看到的靜態(tài)數(shù)據(jù),然后用file文件將其保存起來生成靜態(tài)的頁面

2)當(dāng)用戶修改了發(fā)布內(nèi)容都會(huì)修改數(shù)據(jù)相關(guān)的內(nèi)容,并通過編譯頁面更新靜態(tài)數(shù)據(jù)并用文件的方式緩存起來,當(dāng)用戶查看時(shí)將不做任何數(shù)據(jù)庫查找,直接調(diào)用該緩存文件即可

php 面試必考題 mysql的MyISAM 和 InnoDB 的區(qū)別

1.InnoDB不支持FULLTEXT類型的索引。

2.InnoDB 中不保存表的具體行數(shù),也就是說,執(zhí)行select count(*) from

table時(shí),InnoDB要掃描一遍整個(gè)表來計(jì)算有多少行,但是MyISAM只要簡單的讀出保存好的行數(shù)即可。注意的是,當(dāng)count(*)語句包含

where條件時(shí),兩種表的操作是一樣的。

3.對(duì)于AUTO_INCREMENT類型的字段,InnoDB中必須包含只有該字段的索引,但是在MyISAM表中,可以和其他字段一起建立聯(lián)合索引。

4.DELETE FROM table時(shí),InnoDB不會(huì)重新建立表,而是一行一行的刪除。MyISAM 是表所

innodb是行鎖

5.LOAD TABLE FROM MASTER(從主負(fù)載表)操作對(duì)InnoDB是不起作用的,解決方法是首先把InnoDB表改成MyISAM表,導(dǎo)入數(shù)據(jù)后再改成InnoDB表,但是對(duì)于使用的額外的InnoDB特性(例如外鍵)的表不適用。

另外,InnoDB表的行鎖也不是絕對(duì)的,如果在執(zhí)行一個(gè)SQL語句時(shí)MySQL不能確定要掃描的范圍,InnoDB表同樣會(huì)鎖全表,例如update

table set num=1 where name like “"2%”

6.InnoDB 支持事物

選擇存儲(chǔ)引擎 根據(jù)實(shí)際情況選擇。

一般情況下如果查詢多建議使用myIsam 。

如果你需要事務(wù)處理或是外鍵,那么InnoDB 可能是比較好的方式。

優(yōu)化MYSQL數(shù)據(jù)庫的方法:

1,選取最適用的字段屬性,盡可能減少定義字段長度,盡量把字段設(shè)置NOT NULL,例如'省份,性別',最好設(shè)置為ENUM

2,使用join代替子查詢

3,使用聯(lián)合(UNION)來代替手動(dòng)創(chuàng)建的臨時(shí)表

4,事務(wù)處理(保證數(shù)據(jù)完整性,例如添加和修改同時(shí),兩者成立則都執(zhí)行,一者失敗都失敗)

5,適當(dāng)建立索引(如何建立索引?索引的利與弊?)

6,優(yōu)化sql語句

7,explain可以看到mysql執(zhí)行計(jì)劃

8,分表(垂直分表,水平分表?)

9,數(shù)據(jù)庫主從

PHP面試都會(huì)問什么?

簡單的列出10點(diǎn)供你參考吧

1、php基礎(chǔ)知識(shí)

2、常用函數(shù)使用

3、排序算法

4、引用變量的理解

5、session cookie 的理解

6、http請(qǐng)求 get post php://input 使用

7、mysql數(shù)據(jù)庫鏈表查詢,索引優(yōu)化方案等

8、linux基本命名的使用 crontab,grep ,tail等

9、緩存 redis,memcached等的使用

10、市場上常用的流行PHP框架掌握,熟悉情況

PHP中高級(jí)面試題 – 第一天

一、寫一個(gè)函數(shù),獲取一篇文章內(nèi)容中的全部圖片,并下載

二、什么是 CSRF 攻擊?XSS 攻擊?如何防范?

CSRF:跨站請(qǐng)求偽造,可以通過通過判斷來源和加 Token 的方式來防范。

XSS:跨站腳本攻擊,可以通過對(duì)內(nèi)容轉(zhuǎn)義和過濾來防范,還有 CSP

三、應(yīng)用中我們經(jīng)常會(huì)遇到在 user 表隨機(jī)調(diào)取 10 條數(shù)據(jù)來展示的情況,簡述你如何實(shí)現(xiàn)該功能。

四、MYSQL 中主鍵與唯一索引的區(qū)別

主鍵:絕對(duì)不能有空值。唯一索引:可以有空值

五、http 與 https 的主要區(qū)別

關(guān)鍵是 S 上。簡而言之,https 建立連接后要先把 SSL 的證書發(fā)下去,有了公鑰和私鑰,就可以解密了。

六、兩臺(tái) mysql 服務(wù)器,其中一臺(tái)掛了,怎么讓業(yè)務(wù)端無感切換,并保證正常情況下講臺(tái)服務(wù)器的數(shù)據(jù)是一致的

不是核心業(yè)務(wù)的話,先停寫,把備機(jī)拉起來,查看兩臺(tái)機(jī)器的日志,進(jìn)行數(shù)據(jù)補(bǔ)償,開寫。

如果是核心業(yè)務(wù)的話,現(xiàn)在所有的操作都在正常的狀態(tài)機(jī)器上。把好的這臺(tái)機(jī)器的備機(jī)拉起來,當(dāng)主機(jī)。

以上全是應(yīng)急操作。實(shí)際上數(shù)據(jù)庫的容災(zāi)設(shè)計(jì)要復(fù)雜得多。

面試官要是問你,備機(jī)的數(shù)據(jù)不一致怎么辦,你要勇敢懟回去,你們每秒多少寫入操作。按照百萬級(jí)表,每秒 1000 的寫入效率,正常的設(shè)計(jì)是,分布在 2 臺(tái)機(jī)器上每臺(tái) 500。這個(gè)級(jí)別的數(shù)據(jù)同步,出現(xiàn)差異的概率 可以忽略不計(jì)的。有一臺(tái)出現(xiàn)問題,另一臺(tái)也可以抗住。

(正常的操作,還是先停寫,等數(shù)據(jù)一致,切換,開寫。我們公司搞這些切換都是在凌晨 4.00 左右,核心業(yè)務(wù)的每秒寫操作,只有十幾個(gè)。前后耽擱不到 20 秒)。

七、10 瓶水,其中一瓶有毒,小白鼠喝完有毒的水之后,會(huì)在 24 小時(shí)后死亡,問:最少用幾只小白鼠可以在 24 小時(shí)后找到具體是哪一瓶水有毒。

答案:四只

二進(jìn)制問題。薛定諤的老鼠。

一只老鼠有兩個(gè)狀態(tài),死活,對(duì)應(yīng) 01。假設(shè)老鼠的個(gè)數(shù)為 A,則有 2^A=10; A=4;

思路很簡單,十瓶藥編號(hào):0,1,10,11….1001;

0 不喝。第一只老鼠喝所有個(gè)位是 1 的:13579,第二只喝十位是 1 的,第三只和百位是 1 的,第四只喝千位是 1 的。

24 小時(shí)后,看下死了的是 1,活著的是 0。按老鼠的順序乖乖站好…… 假如第一只和第三只死了,那就是 0101,就是 5 有問題。


分享文章:php面試之?dāng)?shù)據(jù)庫 php數(shù)據(jù)庫工程師
網(wǎng)站地址:http://fisionsoft.com.cn/article/dopdppp.html