① 資料庫里設置欄位的數據類型
可以直接用sql語句來啊
你在創建這些列名的時候直接在它後面加上數據類型就行
如:
create table table_name
(id int,username varchar(20),
password varchar(8),....)
這樣就行了啊
② MySql數據類型有哪些
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兩個列:
定義一個列的語法如下:
其中列名由col_name 給出。列名可最多包含64個字元,字元包括字母、數字、下劃線及美元符號。列名可以名字中合法的任何符號(包括數字)開頭。但列名不能完全由數字組成,因 為那樣可能使其與MySQL數據類型分不開。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 列指定預設值。
如果想給出多個列的專用屬性,可按任意順序指定它們,只要它們跟在列類型之後、通用屬性之前即可。類似地,如果需要給出多個通用屬性,也可按任意順序給出它們,只要將它們放在列類型和可能給出的列專用屬性之後即可。
2. MySQL的列(欄位)類型
資料庫中的每個表都是由一個或多個列(欄位)構成的。在用CREATE TABLE語句創建一個表時,要為每列(欄位)指定一個類型。列(欄位)的類型比MySQL數據類型更為細化,它精確地描述了給定表列(欄位)可能包含的值的種類,如是否帶小數、是否文字很多。
③ 濡備綍浣跨敤緋葷粺甯鍔╂煡鎵綧ySQL涓璬ouble鏁版嵁綾誨瀷鐨勪俊鎮,騫舵壘鍒癲ouble綾誨瀷鏈夌﹀彿鏁幫紵
浣犲彲浠ヤ嬌鐢 MySQL 鐨勭郴緇熷府鍔╂潵鏌ユ壘 double 鏁版嵁綾誨瀷鐨勪俊鎮銆傚湪 MySQL 涓錛屽彲浠ヤ嬌鐢 DESC 鍛戒護鏉ユ煡鐪嬭〃鐨勭粨鏋勪俊鎮錛屽寘鎷姣忎釜鍒楃殑鏁版嵁綾誨瀷銆
涓嬮潰鏄鏌ユ壘 double 鏁版嵁綾誨瀷淇℃伅鐨勬ラわ細
鎵撳紑 MySQL 鍛戒護琛屾垨鑰呭叾浠 MySQL 瀹㈡埛絝錛
榪炴帴鍒頒綘鐨 MySQL 鏁版嵁搴擄紱
閫夋嫨浣犺佹煡鎵句俊鎮鐨勬暟鎹搴擄細USE database_name;錛屽叾涓 database_name 鏄浣犺佹煡鎵句俊鎮鐨勬暟鎹搴撳悕錛
杈撳叆浠ヤ笅鍛戒護錛屾煡鐪嬭〃鐨勭粨鏋勪俊鎮錛欴ESC table_name;錛屽叾涓 table_name 鏄浣犺佹煡鎵句俊鎮鐨勮〃鍚嶏紱
鎵懼埌鏁版嵁綾誨瀷涓 double 鐨勫垪鍚嶏紝鍙浠ユ煡鐪嬪叾鏄鍚︿負鏈夌﹀彿鏁般
濡傛灉浣犳兂鏌ユ壘鎵鏈夌殑 double 鍒楀苟鍒楀嚭鍏舵湁絎﹀彿鏁扮殑淇℃伅錛屽彲浠ヤ嬌鐢ㄤ互涓嬪懡浠わ細
SELECT COLUMN_NAME, COLUMN_TYPE, NUMERIC_SCALE, IS_NULLABLE, COLUMN_DEFAULT,
IF(COLUMN_TYPE LIKE '%unsigned%', 'unsigned', 'signed') AS 'sign'
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'database_name' AND DATA_TYPE = 'double';
鍦ㄤ笂闈㈢殑鍛戒護涓錛屽皢 database_name 鏇挎崲鎴愪綘瑕佹煡鎵句俊鎮鐨勬暟鎹搴撳悕銆傝繖涓鍛戒護灝嗚繑鍥炴墍鏈夋暟鎹綾誨瀷涓 double 鐨勫垪鐨勪俊鎮錛屽寘鎷鍒楀悕銆佹暟鎹綾誨瀷銆佸皬鏁扮偣鍚庣殑浣嶆暟銆佹槸鍚﹀彲浠ヤ負絀恆侀粯璁ゅ間互鍙婃槸鍚︿負鏈夌﹀彿鏁般傚叾涓錛孖F(COLUMN_TYPE LIKE '%unsigned%', 'unsigned', 'signed') 璇鍙ュ皢鍒ゆ柇璇ュ垪鏄鍚︿負鏈夌﹀彿鏁幫紝濡傛灉璇ュ垪綾誨瀷涓鍖呭惈 unsigned錛屽垯榪斿洖 unsigned錛屽惁鍒欒繑鍥 signed銆
④ mysql 資料庫varchar可以存儲多少個漢字和多少個數字
4.0版本以下,varchar(50),指的是50位元組,如果存放UTF8漢字時,只能存16個(每個漢字3位元組) 5.0版本以上,varchar(50),指的是50字元,無論存放的是數字、字母還是UTF8漢字(每個漢字3位元組),都可以存放50個 其實最好的辦法是在自己資料庫中建個表試試可以放多少漢字,現在mysql都5.0已上了,varchar(50)是可以存50個漢字的
具體還是要看版本的:
4.0版本以下,varchar(100),指的是100位元組,如果存放UTF8漢字時,只能存33個(每個漢字3位元組)
5.0版本以上,varchar(100),指的是100字元,無論存放的是數字、字母還是UTF8漢字(每個漢字3位元組),都可以存放100個。