Ⅰ 資料庫中所有的數據類型
sql 用於各種資料庫的數據類型:
一、MySQL 數據類型:
在 MySQL 中,有三種主要的類型:Text(文本)、Number(數字)和 Date/Time(日期/時間)類型。
1、Text 類型。
Ⅱ mysql建表裡PRIMARY, AUTO_INCREMENT,UNSIGNED等等是什麼意思
我舉個小例子給你簡單解釋一下。
例:
CREATE TABLE TABLE_1
(
ID INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
// ID列為無符號整型,該列值不可以為空,並不可以重復,而且自增。
NAME VARCHAR(5) NOT NULL
)
AUTO_INCREMENT = 100;(ID列從100開始自增)
PRIMAPY是主鍵的意思,表示定義的該列值在表中是唯一的意思,不可以有重復。
UNSIGNED是無符號的意思,代表該欄位沒有正負。
AUTO_INCREMENT可以理解為自動遞增的意思,每增加一條記錄,值會自動加1。(例如在上面的例子中,ID列每增加一條記錄,便會從100自增) 。
我想通過上面的例子,你應該可以理解一些了,不明白再問我。謝謝。
Ⅲ 長整型對應資料庫什麼類型
常用的欄位類型大致可以分為數值類型、字元串類型、日期時間類型三大類,下面我們按照分類依次來介紹下。
1.數值類型
數值類型大類又可以分為整型、浮點型、定點型三小類。
整型主要用於存儲整數值,主要有以下幾個欄位類型:
整型經常被用到,比如 tinyint、int、bigint 。默認是有符號的,若只需存儲無符號值,可增加 unsigned 屬性。
int(M)中的 M 代表最大顯示寬度,並不是說 int(1) 就不能存儲數值10了,不管設定了顯示寬度是多少個字元,int 都是佔用4個位元組,即int(5)和int(10)可存儲的范圍一樣。
存儲位元組越小,佔用空間越小。所以本著最小化存儲的原則,我們要盡量選擇合適的整型,例如:存儲一些狀態值或人的年齡可以用 tinyint ;主鍵列,無負數,建議使用 int unsigned 或者 bigint unsigned,預估欄位數字取值會超過 42 億,使用 bigint 類型。
浮點型主要有 float,double 兩個,浮點型在資料庫中存放的是近似值,例如float(6,3),如果插入一個數123.45678,實際資料庫里存的是123.457,但總個數還以實際為准,即6位,整數部分最大是3位。float 和 double 平時用的不太多。
類型
大小
用途
FLOAT 4 位元組 單精度浮點數值
DOUBLE 8 位元組 雙精度浮點數值
定點型欄位類型有 DECIMAL 一個,主要用於存儲有精度要求的小數。
類型
大小
用途
DECIMAL
對DECIMAL(M,D) ,如果M>D,為M+2位元組 否則為D+2
精確小數值
DECIMAL 從 MySQL 5.1 引入,列的聲明語法是 DECIMAL(M,D) 。NUMERIC 與 DECIMAL 同義,如果欄位類型定義為 NUMERIC ,則將自動轉成 DECIMAL 。
對於聲明語法 DECIMAL(M,D) ,自變數的值范圍如下:
M是最大位數(精度),范圍是1到65。可不指定,默認值是10。
D是小數點右邊的位數(小數位)。范圍是0到30,並且不能大於M,可不指定,默認值是0。
例如欄位 salary DECIMAL(5,2),能夠存儲具有五位數字和兩位小數的任何值,因此可以存儲在salary列中的值的范圍是從-999.99到999.99。
2.字元串類型
字元串類型也經常用到,常用的幾個類型如下表:
其中 char 和 varchar 是最常用到的。char 類型是定長的,MySQL 總是根據定義的字元串長度分配足夠的空間。當保存 char 值時,在它們的右邊填充空格以達到指定的長度,當檢索到 char 值時,尾部的空格被刪除掉。varchar 類型用於存儲可變長字元串,存儲時,如果字元沒有達到定義的位數,也不會在後面補空格。
char(M) 與 varchar(M) 中的的 M 表示保存的最大字元數,單個字母、數字、中文等都是佔用一個字元。char 適合存儲很短的字元串,或者所有值都接近同一個長度。例如,char 非常適合存儲密碼的 MD5 值,因為這是一個定長的值。對於字元串很長或者所要存儲的字元串長短不一的情況,varchar 更加合適。
我們在定義欄位最大長度時應該按需分配,提前做好預估,能使用 varchar 類型就盡量不使用 text 類型。除非有存儲長文本數據需求時,再考慮使用 text 類型。
BLOB 類型主要用於存儲二進制大對象,例如可以存儲圖片,音視頻等文件。日常很少用到,有存儲二進制字元串時可以考慮使用。
3.日期時間類型
MySQL支持的日期和時間類型有 YEAR 、TIME 、DATE 、DATETIME 、TIMESTAMP,幾種類型比較如下:
涉及到日期和時間欄位類型選擇時,根據存儲需求選擇合適的類型即可。
關於 DATETIME 與 TIMESTAMP 兩種類型如何選用,可以按照存儲需求來,比如要求存儲范圍更廣,則推薦使用 DATETIME ,如果只是存儲當前時間戳,則可以使用 TIMESTAMP 類型。不過值得注意的是,TIMESTAMP 欄位數據會隨著系統時區而改變但 DATETIME 欄位數據不會。總體來說 DATETIME 使用范圍更廣。
Ⅳ 資料庫里的屬性unsigned是什麼意思,做什麼用的
雖然不清楚你說的是什麼資料庫,unsigned一般是無符號的意思,比如unsigned int就是無符號整數的意思,一般有符號數的最高位是符號位,表示數據的正負,不表示大小,而無符號數的最高位是表示數據的大小,這樣無符號數表示的數據范圍要比有符號數大一倍,這樣解釋能懂吧
Ⅳ 資料庫數據類型的問題
mysql中是沒有number數據類型的,對應的是int(整型)或者float(浮點型)等。
只要建表時沒有選擇unsigned(無符號型)選項,那麼就是可以填入負數的。
如果表已經建好了,只需 ALTER TABLE 指令將對應欄位屬性更改即可,參考SQL:
ALTER TABLE `user` CHANGE `regdate` `regdate` INT( 10 ) NOT NULL DEFAULT '0'
Ⅵ MySQL資料庫中UNSIGNED 是代表什麼意思來著
無符號類型
Ⅶ unsigned是什麼意思
一般是資料庫中為數字類型的就有加上unsigned 表示非負數