詳解MySQL資料庫中字串的正確使用

2022-04-08 04:37:26 字數 1127 閱讀 6518

此文章主要介紹的是mysql資料庫的字元(串)的實際操作步驟,我們大家都知道mysql資料庫的字元(串)在實際操作是經常被用到了,所以你對其有更多的了解還是好的,希望會給你帶來一些幫助在此方面。

mysql資料庫的字元(串)類不要以為字元型別就是char,char和varchar的區別在於char是固定長度,只要你定義乙個欄位是char(10),那麼不論你儲存的資料是否達到了10個位元組,它都要占去10個位元組的空間;而varchar則是可變長度的,如果乙個字段可能的值是不固定長度的,我們只知道它不可能超過10個字元,把它定義為varchar(10)是最合算的,varchar型別的占用空間是它的值的實際長度+1。

為什麼要+1呢?這乙個位元組用於儲存實際使用了多大的長度。從這個+1中也應該看到,如果乙個字段,它的可能值最長是10個字元,而多數情況下也就是用到了10個字元時,用varchar就不合算了:因為在多數情況下,實際占用空間是11個位元組,比用char(10)還多占用乙個位元組。

舉個例子,就是乙個儲存**名稱和**的表,**名稱絕大部分是四個字的,即8個位元組;****,上海的是六位數字,深圳的是四位數字。這些都是固定長度的,**名稱當然要用char(8);****雖然是不固定長度,但如果使用varchar(6),乙個深圳的****實際占用空間是5個位元組,而乙個上海的****要占用7個位元組!考慮到上海的**數目比深圳的多,那麼用varchar(6)就不如char(6)合算了。

雖然乙個char或varchar的最大長度可以到255,我認為大於20的char是幾乎用不到的――很少有大於20個位元組長度的固定長度的東東吧?不是固定長度的就用varchar。大於100的varchar也是幾乎用不到的――比這更大的用text就好了。

tinytext,最大長度為255,占用空間也是實際長度+1;text,最大長度65535,占用空間是實際長度+2;mediumtext,最大長度16777215,占用空間是實際長度+3;longtext,最大長度4294967295,占用空間是實際長度+4。為什麼+1、+2、+3、+4?你要是還不知道就該打pp了。這些可以用在論壇啊、新聞啊,什麼的,用來儲存文章的正文。根據實際情況的不同,選擇從小到大的不同型別。

以上的相關內容就是對mysql資料庫的字元(串)型別的介紹,望你能有所收穫。

1  上述的相關內容就是對mysql資料庫的字元(串)型別的描述,希望會給你帶來一些幫助在此方面。

資料庫連線字串 MySQL 連線字串

myodbc myodbc 2.50 本地資料庫 driver server localhost option 16834 database mydatabase myodbc 2.50 遠端資料庫 driver server myserveraddress port 3306 option 131...

Oracle資料庫中的字串函式

最近學了一些關於oracle的字串處理的方法,在這裡記下來。表示零或多個字元 表示乙個字元 對於特殊符號可使用 escape 識別符號來查詢 select from emp where ename like escape 上面的 escape 表示 後面的那個符號不當成特殊字元處理,就是查詢普通的 ...

資料庫連線字串

jdbc連線串 oracle8 8i 9i thin class oracle.jdbc.driver.oracledriver sql server7.0 2000 class com.microsoft.jdbc.sqlserver.sqlserverdriver url jdbc micros...