花點時間適當地設計專案的表結構是成功的關鍵。對於這個我深有體會,上個專案,在設計資料庫時沒有經過討論,最後設計出來的資料庫雖然有關聯關係的表有外來鍵約束關係,但是兩個字段居然不一樣,在使用中各種困難,估計只要設計資料庫的人才能明白,所以設計好資料庫時很關鍵的。
myisam 表無法處理事務,這意味著應當對所有非事務需求使用此型別。
使用情況:1、選擇密集的表。在篩選大量資料是非常迅速
2、插入密集的表。myisam 的併發插入特性允許同事選擇和插入資料
myisam靜態格式所有列的字段型別都是固定長度,就是沒有varchar或者text等變長的型別出現,這種型別的表效能非常高,這種錶用空間換時間的方法。若所有的資料型別都是靜態的則myisam使用靜態格式。
myisam動態如果列表型別使用動態格式,則myisam 為動態格式。
myisam 壓縮有時會建立在整個應用程式生命週期中都唯讀的表,如果是這種情況,就可以使用myisampack工具將其轉換為myisam 壓縮表來減少所佔空間,
1、更新密集的表。適合處理多重併發的更新請求。
2、事務。支援事務的標準
3、自動災難恢復。能夠自動從災難中恢復。
1、可以忽略。目標資料相對較小,而且被非常頻繁的訪問。
2、暫時。目標資料只是臨時需要,在生命週期中必須立即使用
3、相對無關。儲存在memory表中的資料如果突然丟失,不會對應用服務產生實質的負面影響。
4、支援雜湊索引和b樹索引。index using hash(username);對username列宣告乙個雜湊索引
日期和時間資料型別1、date:負責儲存日期資訊。
2、datatime:儲存日期和時間資訊的組合
3、time:時間儲存
4、timestamp:執行了影響timestamp資料的inserto(插入)或update(刪除)操作之後,mysql會自動將其更新為當前的日期和時間。
5、year:儲存年份特定的資訊
數值資料型別1、bool和boolean:bool是tinyint(1)的別名,用於賦值0或1
2、bigint:mysql最大整數範圍,有符號數範圍是-9223372036854775808~9223372036854775807
3、int :第二大整數範圍,有符號數範圍是-2147483648~2147483647
3、mediumint:第三大整數範圍,有符號數範圍是-8388608~8388607
4、smallint:第四大整數範圍,支援有符號數範圍是,支援的有符號數範圍是-32768~32767
5、tinyint:資料型別是最小的整數範圍,支援的有符號數範圍是-128~127
6、decimal:儲存為字串的浮點數
7、double:雙精度浮點數
8、float:單精度浮點數
字串資料型別1、char資料型別為mysql提供了固定長度的字串,支援最大255個字元
2、varchar是可變字長的表示形式
3、longblob資料型別是mysql最大的二進位制字串表示形式,支援4294967295個字元,差不多有乙個g了
MySQL 鎖機制 儲存引擎 資料型別
mysql常用資料型別 mysql識別符號命名規則 mysql中utf8 utf8mb4字符集的區別 關於null 資料庫本身也提供了一些鎖,按加鎖方式分為 按照讀寫許可權分為 排它鎖 共享鎖都是資料庫提供的鎖機制,直接呼叫資料庫的相關語句即可。共享鎖可能發生死鎖問題 一塊資料已經加了共享鎖,如果乙...
mysql 儲存引擎和資料匯入匯出
儲存引擎 mysql服務軟體自帶的功能程式,處理表的處理器 每種不同的儲存引擎有不同的功能和資料儲存方式 show engine 檢視引擎 修改引擎 停止服務 修改配置檔案 mysqld default stroage engine 儲存引擎名稱 alter table 表名 engine 引擎名 ...
資料和資料型別
一 什麼是資料 二 資料的表現形式 1 十進位制 數碼 指集合論中刻畫任意集合所含元素多少的乙個概念。10 權位 進製中每一固定位置對應的單位值稱為位權 2 二進位制 二進位制是計算技術中廣泛採用的一種數制。二進位制資料是用0和1兩個數碼來表示的數。它的基數為2,進製規則是 逢二進一 借位規則是 借...