MYSQL中如何選擇合適的資料型別

時間 2021-05-05 18:25:56

1樓:從頭開始自學

1.選擇資料型別的基本原則 前提: 使用適合儲存引擎。

myisam資料表,最好使用固定長度的資料列代替可變長度的資料列。 2). memory儲存引擎和資料列 memory資料表目前都使用固定長度的資料行儲存,因此無論使用char或varchar列都沒有關係。

兩者都是作為char型別處理的。 3). innodb 儲存引擎和資料列 建議使用 varchar型別,對於innodb資料表,內部的行儲存格式沒有區分固定長度和可變長度列(所有資料行都使用指向資料列值的頭指標),因此在本質上,使用固定長度的 char列不一定比使用可變長度varchar列簡單。

因而,主要的效能因素是資料行使用的儲存總量。由於char平均佔用的空間多於varchar,因 此使用varchar來最小化需要處理的資料行的儲存總量和磁碟i/o是比較好的。 2.

固定長度資料列與可變長度的資料列1).char與varchar l char和varchar型別類似,但它們儲存和檢索的方式不同。它們的最大長度和是否尾部空格被保留等方面也不同。

在儲存或檢索過程中不進行大小寫轉換。下面的表顯示了將各種字串值儲存到char(4)和varchar(4)列後的結果,說明了char和varchar之間的差別:值char(4)儲存需求varchar(4)儲存需求''' '4個位元組''1個位元組'ab''ab '4個位元組'ab '3個位元組'abcd''abcd'4個位元組'abcd'5個位元組'abcdefgh''abcd'4個位元組'abcd'5個位元組 請注意上表中最後一行的值只適用不使用嚴格模式時;如果mysql執行在嚴格模式,超過列長度不的值不儲存,並且會出現錯誤。

從char(4)和varchar(4)列檢索的值並不總是相同,因為檢索時從char列刪除了尾部的空格。通過下面的例子說明該差別: mysql> create table vc (v varchar(4), c char(4)); query ok, 0 rows affected (0.

02 sec) mysql>

如何在shell中操作mysql資料庫

對mysql偶爾有用的另一個選項是 e或 execute選項,可用來將sql語句傳遞給伺服器。該語句必須 用引號引起來 單引號或雙引號 然而,如果想要在查詢中將值引起來,則對於查詢應使用雙引號 查詢中引用的值應使用單引號 當使用該選項時,語句被執行,然後mysql立即退出命令外殼。例如,你可以用下面...

Mysql資料庫中多條重複資料,如何只刪除一條

蒯淑蘭費琬 這個需要分情況。1,你的資料庫表中有主鍵,且主鍵上面的資料為唯一值。也就是沒有重複值。那麼你在刪除的時候,將這個唯一值作為條件進行刪除。如 delete from 表名 where id 1 2.所有的資料相同,那麼你只能開啟資料表,手工選定其中某一條,進行刪除。 初懷雨步申 這條語句寫...

Mysql如何對列中的資料進行統一修改

update 表名 set 欄位名 1 這樣的語句就可以完成全部修改,因為你後面是不限制條件的,它會把整個表的這個欄位全部修改 如果要全部改的話用這一句就夠了update table name set npc 1 司慧芳她老公丶 你可以試試這樣 update 表名 set 列名 修改後的值 orde...