mysql資料型別及列型別(1)

2021-04-28 15:34:40 字數 1922 閱讀 6521

我們要把現實世界中的各種資訊轉換成計算機能理解的東西,這些轉換後的資訊就形成了資料。例 如,某人的出生日期是「2023年5月23日」,他的身高是170厘公尺,等等。資料不僅包括數字、字母、文字和其他特殊字元組成的文字形式的資料,而且還 包括圖形、影象、動畫、影像、聲音等多**資料。但使用最多、最基本的仍然是文字資料。

1. mysql的資料型別

在mysql中有如下幾種資料型別:

(1)數值型

數值是諸如32 或153.4 這樣的值。mysql 支援科學表示法,科學表示法由整數或浮點數後跟「e」或「e」、乙個符號(「+」或「-」)和乙個整數指數來表示。1.24e+12 和23.47e-1 都是合法的科學表示法表示的數。而1.24e12 不是合法的,因為指數前的符號未給出。

浮點數由整數部分、乙個小數點和小數部分組成。整數部分和小數部分可以分別為空,但不能同時為空。

數值前可放乙個負號「-」以表示負值。

(2)字元(串)型

字元型(也叫字串型,簡稱串)是諸如「hello, world!」或「乙個饅頭引起的血案」這樣的值,或者是**號碼87398413這樣的值。既可用單引號也可用雙引號將串值括起來。

初學者往往分不清數值87398143和字串87398143的區別。都是數字啊,怎麼乙個要用數值型,乙個要用字元型呢?關鍵就在於:數值型的 87398143是要參與計算的,比如它是金融中的乙個貨款總額;而字元型的87398143是不參與計算的,只是表示**號碼,這樣的還有街道號碼、門 牌號碼等等,它們都不參與計算。

(3)日期和時間型

日期和時間是一些諸如「2006-07-12」或「12:30:43」這樣的值。mysql還支援日期/時間的組合,如「2006-07-12 12:30:43」。

(4)null值

null表示未知值。比如填寫**中通訊位址不清楚留空不填寫,這就是null值。

我們用create table語句建立乙個表(參看前面的章節),這個表中包含列的定義。例如我們在前面建立了乙個joke表,這個表中有content和writer兩個列:

create table

(content varchar(20) not null,

writer varchar(10) null

) 定義乙個列的語法如下:

col_name col_typy [col_attributes] [general_attributes]

其中列名由col_name 給出。列名可最多包含64個字元,字元包括字母、數字、下劃線及美元符號。列名可以名字中合法的任何符號(包括數字)開頭。但列名不能完全由數字組成,因 為那樣可能使其與資料分不開。mysql保留諸如select、delete和create這樣的詞,這些詞不能用做列名,但是函式名(如pos 和min)是可以使用的。

列型別col_type表示列可儲存的特定值。列型別說明符還能表示存放在列中的值的最大長度。對於某些型別,可用乙個數值明確地說明其長度。而另外一些 值,其長度由型別名蘊含。例如,char(10) 明確指定了10個字元的長度,而tinyblob值隱含最大長度為255個字元。有的型別說明符允許指定最大的顯示寬度(即顯示值時使用多少個字元)。浮 點型別允許指定小數字數,所以能控制浮點數的精度值為多少。

(1)專用屬性用於指定列。例如,unsigned 屬性只針對整型,而binary屬性只用於char 和varchar。

(2)通用屬性除少數列之外可用於任意列。可以指定null 或not null 以表示某個列是否能夠存放null。還可以用default,def_value 來表示在建立乙個新行但未明確給出該列的值時,該列可賦予值def_value。def_value 必須為乙個常量;它不能是表示式,也不能引用其他列。不能對blob 或text 列指定預設值。

如果想給出多個列的專用屬性,可按任意順序指定它們,只要它們跟在列型別之後、通用屬性之前即可。類似地,如果需要給出多個通用屬性,也可按任意順序給出它們,只要將它們放在列型別和可能給出的列專用屬性之後即可。

mysql資料型別及列型別(2)

2.mysql的列 字段 型別 資料庫中的每個表都是由乙個或多個列 字段 構成的。在用create table語句建立乙個表時,要為每列 字段 指定乙個型別。列 字段 的型別比資料型別更為細化,它精確地描述了給定表列 字段 可能包含的值的種類,如是否帶小數 是否文字很多。2.1數值列型別 mysql...

MySQL資料型別及列型別 一

我們要把現實世界中的各種資訊轉換成計算機能理解的東西,這些轉換後的資訊就形成了資料。例如,某人的出生日期是 1987年5月23日 他的身高是170厘公尺,等等。資料不僅包括數字 字母 文字和其他特殊字元組成的文字形式的資料,而且還包括圖形 影象 動畫 影像 聲音等多 資料。但使用最多 最基本的仍然是...

MySQL資料型別及列型別 二

下表給出了mysql 定義串值列的型別,以及每種型別的最大尺寸和儲存需求。對於可變長的列型別,各行的值所佔的儲存量是不同的,這撒於實際存放在列中的值的長度。這個長度在表中用l 表示。型別說明 最大尺寸 儲存需求 char m m 位元組 m 位元組 varchar m m 位元組 l 1位元組 ti...