1.mysql中有哪些不同的**?
myisam: 基於iasm**、可以被壓縮,支援全文搜尋,事務不安全,而且也不支援外來鍵。如果事務回滾將會造成不完全回滾,從而不具備原子性。所以假如忽略事務以及訪問併發性的話,並且需要執行大量的select檢索語句的話,myisam將是最好的選擇
heap:是mysql中訪問資料最快的表。這是因為他們使用儲存在動態記憶體中的乙個雜湊索引,不過如果mysql或伺服器崩潰,這些記憶體資料將會丟失
merge:實際上是又乙個myisam表的集合,合併而成的乙個表,主要是為了效率的考慮,不僅僅可以提高速度、搜尋效率、修復效率而且還節省了磁碟空間。
innodb:事務安全、支援外來鍵。如果需要乙個事務安全的儲存引擎,建議使用它。如果你的資料執行大量的insert或update,出於效能方面的考慮,同樣應該使用innodb表。對於支援事務的innodb型別的表來說,影響速度的主要原因是autocommit預設設定是開啟的,而且程式沒有顯式呼叫begin開始事務,導致每插入一條都自動提交,嚴重影響了速度。可以在執行sql前呼叫begin,多條sql形成乙個事物(即使autocommit開啟也可以),將大大提高效能
isam:簡稱為索引順序訪問方法,由ibm開發的,用於在磁帶等輔助儲存系統上儲存和檢索資料
2.自增id
一張id主鍵自增的表,當insert了10條記錄之後,刪除了第8、9、10條記錄,再把mysql重啟,再insert一條記錄,這條記錄的id是11還是8
如表型別是myisam:11。因其把自增主鍵id記錄到檔案中,重啟id不會丟失。
如表型別是innodb:8。。因其把自增主鍵id記錄到記憶體中,重啟會導致丟失。
3.heap特點
不允許**blob或**text欄位
只允許使用=和<=>操作符來搜尋記錄(不允許、<=或》=)
heap表不支援auto_increment
索引不可為null
4.如何控制heap的最大值
設定max_heap_table_size
5.myisam static和myisam dynamic區別
在myisam static上的所有欄位有固定寬度。動態myisam表將具有像text,blob等字段,以適應不同長度的資料型別。
myisam static在受損情況下更容易恢復。
6.blob和text區別
blob是乙個二進位制物件,可以容納可變數量的資料。有四種型別的blob:tinyblob,blob,mediumblob,longblob
它們只能在所能容納價值的最大長度上有所不同。
text是乙個不區分大小寫的blob。四種text型別:tinytext,text,mediumtext,longtext
它們對應於四種blob型別,並具有相同的最大長度和儲存要求。
blob和text型別之間的唯一區別在於對blob值進行排序和比較時區分大小寫,對text值不區分大小寫。
7.mysql中有哪幾種鎖
表級鎖:開銷小,加鎖快,不會出現死鎖。鎖定粒度大,發生鎖衝突的概率最高,併發量最低
行級鎖:開銷大,加鎖慢,會出現死鎖。鎖力度小,發生鎖衝突的概率小,併發度最高
myisam支援表鎖,innodb支援表鎖和行鎖,預設為行鎖
8.now()和current_date()有什麼區別?
9.mysql查詢是否區分大小寫?
不區分10. 在mysql中enum的用法?
create tabletest4 (
idbigint unsigned primary keyauto_increment,
brandvarchar(255) not null,
color enum('red','green','blue')
) engine= innodb;
11.mysql優勢?
mysql是開源軟體,隨時可用,無需付費。
mysql是可攜式的
帶有命令提示符的gui。
使用mysql查詢瀏覽器支援管理
12.如何區分float和double
浮點數以8位精度儲存在float中,並且有四個位元組。
浮點數儲存在double中,精度為18位,有八個位元組。
13.區分char_length和length?
char_length是字元數,而length是位元組數。latin字元的這兩個資料是相同的,但是對於unicode和其他編碼,它們是不同的。
14.innodb支援的四種事務隔離級別名稱,以及逐級之間的區別
read uncommited :讀到未提交資料
read committed:髒讀,不可重複讀
repeatable read:可重讀(預設)
serializable :序列事物
髒讀 :乙個事務讀取到另一事務未提交的更新資料 不可重複讀 : 在同一事務中,多次讀取同一資料返回的結果有所不同, 換句話說, 後續讀取可以讀到另一事務已提交的更新資料. 相反, 「可重複讀」在同一事務中多次讀取資料時, 能夠保證所讀資料一樣, 也就是後續讀取不能讀到另一事務已提交的更新資料。
幻讀 :乙個事務讀到另乙個事務已提交的insert資料
15.列的字串型別
setblob
enum
char
text
varchar
16.federated表是什麼?
允許訪問位於其他伺服器資料庫上的表。
17.如果乙個表有一列定義為timestamp,將發生什麼?
每當行被更改時,時間戳字段將獲取當前時間戳。
18.列設定為auto increment時,如果在表中達到最大值,會發生什麼情況?
停止遞增,任何進一步的插入都將產生錯誤,因為金鑰已被使用。
19.怎樣才能找出最後一次插入時分配了哪個自動增量?
last_insert_id()將返回由auto_increment分配的最後乙個值,並且不需要指定表名稱
20.怎麼看到為**定義的所有索引?
show index from ;
21.如何在unix和mysql時間戳之間進行轉換
unix_timestamp是從mysql時間戳轉換為unix時間戳的命令
from_unixtime是從unix時間戳轉換為mysql時間戳的命令
舉例:select unix_timestamp('2018-09-22 17:43:16') /*1537609396*/
select from_unixtime(1537609396) /*2018-09-22 17:43:16*/
22.如何在mysql中執行批處理模式
把你想要執行的命令放在乙個檔案中,然後告訴mysql從檔案讀取它的輸入
shell> mysql < batch-file
23.mysql表中允許有多少個triggers?
在mysql表中允許有六個觸發器,如下:
before insert
after insert
before update
after update
before delete
after delete
24.mysql支援事務嗎?
在 mysql 中只有使用了 innodb 資料庫引擎的資料庫或表才支援事務。
事務處理可以用來維護資料庫的完整性,保證成批的 sql 語句要麼全部執行,要麼全部不執行。
事務用來管理 insert,update,delete 語句
25.mysql資料表在什麼情況下容易損壞
伺服器突然斷電導致資料檔案損壞。
強制關機,沒有先關閉mysql 服務等。
26.mysql有關許可權的表都有哪幾個
mysql伺服器通過許可權表來控制使用者對資料庫的訪問,許可權表存放在mysql資料庫裡,由mysql_install_db指令碼初始化。這些許可權表分別user,db,table_priv,columns_priv和host。
參考
uma是什麼意思 UMA是什麼意思?
展開全部 uma 不明生物 是636f707962616964757a686964616f31333431376537動畫 進化戰記 betterman 中的一類人造怪物的統稱,是生命工學食料研究所 b.p.l.所長梅崎博士製造出來 協助他利用阿尼瑪斯之花 大量製造蛋白質 具有驚人攻擊性的怪物。阿拉...
是什麼意思?
meta是html中的元標籤,其中包含了對應html的相關資訊,客戶端瀏覽器或伺服器端的程式會根據這些資訊進行處理。http equiv類似於http的頭部協議,它回應給瀏覽器一些有用的資訊,以幫助正確和精確地顯示網頁內容。content 內容型別 重要!這個網頁的格式是文字的,網頁模式 chars...
In 是什麼意思
函式引數型別前 in 代表什麼 在visual c 中屬於sal批註,是為了編譯系統在分析 時發現缺陷用的 表示是乙個輸入引數。可以定義乙個 in 的巨集,這個巨集什麼都不做,就是形如這樣的。define in void fun int in x 等同於 void fun int x 但是他給出了引...