新聞中心
數(shù)據(jù)庫的數(shù)值類型是數(shù)據(jù)庫管理系統(tǒng)中的一種數(shù)據(jù)類型,用于表示和儲存數(shù)字。不同的數(shù)據(jù)庫系統(tǒng)支持不同的數(shù)值類型,但是它們一般都包括整數(shù)和浮點數(shù)。

網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、小程序定制開發(fā)、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了界首免費建站歡迎大家使用!
在數(shù)據(jù)庫中,數(shù)值類型的儲存和表示方式非常重要。這些方式直接影響到數(shù)據(jù)在數(shù)據(jù)庫中的存儲和訪問速度,并且還會對數(shù)據(jù)庫的性能和可擴展性產(chǎn)生影響。
下面我們將對數(shù)值類型的存儲和表示方式進行詳細的介紹。
一、整數(shù)類型
整數(shù)類型是一種表示整數(shù)數(shù)字的數(shù)值類型,在數(shù)據(jù)庫中通常使用來儲存數(shù)量、計數(shù)和標識符等。
在不同的數(shù)據(jù)庫系統(tǒng)中,整數(shù)類型有所不同。MySQL中有TINYINT、ALLINT、MEDIUMINT、INT、BIGINT等數(shù)值類型。Oracle數(shù)據(jù)庫則有NUMBER、INTEGER、ALLINT、BIGINT等。
不同的整數(shù)類型有不同的存儲大小和表示范圍。例如,MySQL的TINYINT類型可以儲存-128到127之間的整數(shù),而BIGINT類型可以儲存-9223372023854775808到9223372023854775807之間的整數(shù)。
對于整數(shù)類型,其儲存和表示方式的主要差異在于使用多少個字節(jié)來存儲數(shù)字,以及如何表示負數(shù)。在使用較小的整數(shù)類型時,可以有效地減小存儲空間占用,但是需要注意數(shù)值過大超出數(shù)據(jù)類型范圍的問題。
二、浮點數(shù)類型
浮點數(shù)類型是一種表示小數(shù)的數(shù)值類型,在數(shù)據(jù)庫中通常用于存儲金錢、測量和成分等需求。
與整數(shù)類型相比,浮點數(shù)儲存范圍更廣,可以儲存更大的數(shù)字,也可以儲存小數(shù)點后的數(shù)字。
在不同的數(shù)據(jù)庫系統(tǒng)中,浮點數(shù)類型的字節(jié)大小和表示方式也有所不同。例如,MySQL支持FLOAT和DOUBLE類型,Oracle支持BINARY_FLOAT和BINARY_DOUBLE類型。
不同的浮點數(shù)類型在存儲和表示上的主要區(qū)別在于字節(jié)大小、規(guī)格和精度。FLOAT類型通常使用4個字節(jié),DOUBLE類型通常使用8個字節(jié)。兩者之間更大的差異在于DOUBLE類型可以存儲更多的小數(shù)位,但是占用的存儲空間更大。
對于浮點數(shù)類型,還需要注意浮點數(shù)精度問題。由于計算機的浮點數(shù)計算精度限制,浮點數(shù)類型的計算結果可能會存在少量誤差。
三、定點數(shù)類型
定點數(shù)類型是一種精確表示小數(shù)的數(shù)值類型,在數(shù)據(jù)庫中通常用于儲存貨幣、精確測量結果等需求。
與浮點數(shù)類型不同,定點數(shù)類型使用固定的數(shù)據(jù)格式來表示小數(shù)。這種格式通常是一個整數(shù)和一個小數(shù)部分,其中小數(shù)部分的數(shù)量是固定的。
在不同的數(shù)據(jù)庫系統(tǒng)中,定點數(shù)類型的字節(jié)大小和表示方式也有所不同。例如,MySQL支持DECIMAL和NUMERIC類型,Oracle支持NUMBER類型。
不同的定點數(shù)類型在存儲和表示上的主要區(qū)別在于字節(jié)大小、精確度和規(guī)格。例如,DECIMAL類型的規(guī)格通常是DECIMAL(精度,小數(shù)位數(shù)),其中精度表示更大可儲存的數(shù)字的位數(shù),小數(shù)位數(shù)表示浮點位數(shù)。
:
在數(shù)據(jù)庫中,數(shù)值類型用于儲存和表示數(shù)字。不同的數(shù)值類型有不同的存儲和表示方式,可以通過儲存大小、數(shù)字量、規(guī)格和精度等來區(qū)分。在選擇數(shù)值類型時,應該根據(jù)具體的需求選擇最適合的類型,避免浪費存儲空間并提高性能和可擴展性。
成都網(wǎng)站建設公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導10多年以來專注數(shù)字化網(wǎng)站建設,提供企業(yè)網(wǎng)站建設,高端網(wǎng)站設計,響應式網(wǎng)站制作,設計師量身打造品牌風格,熱線:028-86922220數(shù)據(jù)庫中所有的數(shù)據(jù)類型?
MySQL 數(shù)據(jù)類型,在 MySQL 中,有三種攜鍵主要的類型:文本、數(shù)字和日期/時間類型橡敬。辯如巧
SQL 用于各種數(shù)據(jù)庫的數(shù)據(jù)類型:
一、MySQL 數(shù)據(jù)類型:
在 MySQL 中,有三種主要的類型:Text(文本)、Number(數(shù)字)和 Date/Time(日期/時間)類型。
1、羨悉Text 類型。
2、Number 類型。這些整數(shù)類型擁有額外的選項 UNSIGNED。通常,整數(shù)可以是負數(shù)或正數(shù)。如果添加 UNSIGNED 屬性,那么范圍將從 0 開始,而不是某個負數(shù)。
3、Date 類型。
即便 DATETIME 和 TIMESTAMP 返回相同的格式,它們的工作方式很不同。在 INSERT 或 UPDATE 查詢中,TIMESTAMP 自動把自身設置為當前的日期和時間。
TIMESTAMP 也接受不同的格式,比如 YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDD 或 YYMMDD。
二、SQL Server 數(shù)據(jù)類型:
1、String 類兄腔乎型。
2、Number 類型。
3、Date 類型。
4、其他數(shù)據(jù)類型。
擴展資料:
Microsoft Access的數(shù)據(jù)類型:
參考資料圓孝:
百度百科–SQL數(shù)據(jù)類型
數(shù)據(jù)庫模型主要分有兩種,即關系型數(shù)據(jù)庫和
非關系型數(shù)據(jù)庫
。
關系型數(shù)據(jù)庫:網(wǎng)絡數(shù)據(jù)庫和層次數(shù)據(jù)庫很好地解決了數(shù)據(jù)的集中和共享問題,但是在數(shù)據(jù)獨立性和抽象級別上仍有很大欠缺。用戶對這兩種數(shù)據(jù)庫進行存取時,依然需要明確數(shù)據(jù)的存儲結攔察構,支出存儲路徑。而
關系數(shù)據(jù)庫
就可以較好地解決這些問題 。
非關系型數(shù)據(jù)庫:非關系型數(shù)據(jù)庫也被成為NoSQL數(shù)據(jù)庫,NOSQL的本意是“Not Olnly SQL” 指的是非關系型數(shù)據(jù)庫,而不是“No SQL”的意思,因此,NoSQL的產(chǎn)生并不是要徹底地否定非關系型數(shù)據(jù)庫,而是作為傳統(tǒng)關系型數(shù)據(jù)庫的一個有效補充。
擴展資料
關系型數(shù)據(jù)庫的優(yōu)點:關系型數(shù)據(jù)庫由于具有20多年的技術歷程,技術成熟。通過事務處理保持數(shù)據(jù)的一致性,數(shù)據(jù)更新的開銷很小。其次,可以進行Join等復雜查詢
非關系型數(shù)據(jù)庫的優(yōu)點:處理高并發(fā)、大兄滾批量數(shù)據(jù)的能力強羨衡余。支持分布式集群,
負載均衡
,性能高,而且可以解決“阻抗失諧”問題。內(nèi)存級數(shù)據(jù)庫,查詢速度快。儲格式多,支持key-value形式、文檔形式、圖片形式。有多表連接查詢機制的限制,擴展性高。
參考資料來源:
百度百科-數(shù)據(jù)庫(類型)
參考資料來源:
百度百科-關系型數(shù)據(jù)庫
參考資料來源:
百度百科-非關系型數(shù)據(jù)庫
bigint
巨整型,橡戚巨整型是八個字節(jié)的整數(shù),精度為 19 位返畝。巨整型的范圍從 -9,223,372,036,854,775,808 到
9,223,372,036,854,775,807。
binary
二進制
bit
字節(jié)
char
字符類型
detetime
時間類型
decimal
Decimal 數(shù)據(jù)類型 Decimal 變量存儲為 96 位(12 個字節(jié))無符號的整型形式,并除以一個 10 的冪數(shù)。
這個變比因子決定了小數(shù)點右面的數(shù)字位數(shù),其范圍從 0 到 28。變比因子為 0(沒有小數(shù)位)的情形下,
更大的可能值為 +/-79,228,162,514,264,337,593,543,950,335。而在有 28 個小數(shù)位的情況下,更大值為
+/-7.,而最小的非零值為 +/-0.。
float
單精度類型
image
圖片類型
int
整形
money
貨幣類型
nchar
字符類型,根據(jù) unicode 標準所進行的定義,用給定整數(shù)代碼返回 unicode 字符。
ntext
文本類型
numeric
decimal(numeric ) 同義,用于精確存儲數(shù)值
decimal 數(shù)據(jù)類型最多可存儲 38 個數(shù)字,所有數(shù)字都能夠放到小數(shù)點的右邊。decimal 數(shù)據(jù)類型存儲了一
個準確(精確)的數(shù)字表達法;不存儲值的近似值。
nvarchar
可變長度 (varchar) 字符數(shù)據(jù)類型。
real
float 和 real 數(shù)據(jù)
float 和 real 數(shù)據(jù)類型被稱為近似的數(shù)據(jù)類型。在近似數(shù)字數(shù)據(jù)類型方面,float 和 real 數(shù)據(jù)的使用遵
循 IEEE 754 標準。
alldatetime
短日期類型
allint
短整型
allmoney
短貨幣型
sql_variant
一種數(shù)據(jù)類型,用于存儲 SQL Server 支持的各種數(shù)據(jù)類型(不包括 text、ntext、image、timestamp 和
sql_variant)的值。
text
文本
timestamp
這里有介紹
tinyint
tinyint 使用整數(shù)數(shù)據(jù)的精確數(shù)字數(shù)據(jù)類型,范圍 0 到 255,存儲 1 字節(jié)
uniquedentifier
uniqueidentifier數(shù)據(jù)類型可存儲16字節(jié)的二進制值,其作用與全局唯一標記符(GUID)一樣。GUID是唯一
的二進制數(shù):世界上的任何兩臺計算機都不會生成重復的GUID值。GUID主要用于在用于多個節(jié)點,多臺計算
機的網(wǎng)絡中,分配必須具有唯一性的標識符。 在SQL中 ROWGUIDCOL表示新列是行的全局唯一標識列。對于
每個表只能指派一個uniqueidentifier 列作為ROWGUIDCO列。ROWGUIDCOL屬性只能指派給uniqueidentifier
列
Uniqqueidentifier 是全局唯一的標識
varbinary
可變長度二進制數(shù)據(jù)。n 可以是從 1 到 8,000 之間的值。max 指示更大存儲大小為 2^31-1 字節(jié)。存儲大
小為所輸入數(shù)據(jù)的實際長度 + 2 個字節(jié)。所輸入數(shù)據(jù)的長度可以是 0 字節(jié)。varbinary 的 ANSI SQL 同義
詞為 binary varying。
varchar
可漏如森變長度,非 Unicode 字符數(shù)據(jù)。n 的取值范圍為 1 至 8,000。max 指示更大存儲大小是 2^31-1 個字節(jié)
。存儲大小是輸入數(shù)據(jù)的實際長度加 2 個字節(jié)。所輸入數(shù)據(jù)的長度可以為 0 個字符。varchar 的 ISO 同
義詞為 char varying 或 character varying。
基本就是這樣吧。
bigint 大的伍春整型 64位
binary 二伏空進制型數(shù)據(jù)
bit 位(1為真0為假)
char 字符
datetime 時間
decimal 十進制浮點型
float 單精度浮點型
image 二進制圖像
int 整型(32位)
money 錢(浮點型缺橘瞎,精度三位小數(shù))
nchar Unicode固定長度字符
ntext 文本
numeric 數(shù)字
nvarchar Unicode可變長度字符
real 類似于C++,JAVA中的double
alldatetime 小型時間
allint 小型int(16)位
allmoney 小錢
sql_variant 變量
text ANSI文本
timestamp 不知道
tinyint 極少整型(8位)
uniquedentifier 不知道
varbinary varchar
sql語言中,各種數(shù)據(jù)類型代表的含義是什么
(1)數(shù)值型
數(shù)值是諸如32 或153.4 這樣的值。MySQL 支持科學表示法,科學表示法由整數(shù)或浮點數(shù)后跟“e”或“E”、一個符號(“+”或“-”)和一個整數(shù)指數(shù)來表示。1.24E+12 和23.47e-1 都是合法的科學表示法表示的稿緩數(shù)。而1.24E12 不是合法的,因為指數(shù)前的符號未給出。
浮點數(shù)由整數(shù)部分、一個小數(shù)點和小數(shù)部分組成。整數(shù)部分和小數(shù)部分可以分別為空,但不能同時為空。
數(shù)值前可放一個負號“-”以表示負值。
(2)字符(串)型
字符型(也叫字符串型,簡稱串)是諸如“Hello, world!”或“一個饅頭引起的血案”這樣的值,或者是號碼這樣的值。既可用單引號也可用雙引號將串值括起來。
初學者往往分不清數(shù)值和字符串的區(qū)別。都是數(shù)字啊,怎么一個要用數(shù)值型,一個要用字符型呢?關鍵就在于:數(shù)值型的是要參與計算的,比如它是金融中的一個貨款總額;而字符型的是不參與計算的,只是表示號碼,這樣的還有街道號碼、門牌號碼等等,它們都不參與計算。
(3)日期和時間型
日期和時間是一些諸如“”或“12:30:43”這樣的值。MySQL還支持日期/時間的組合,如“:30:43”。
(4)NULL值
NULL表示未知值。比如填寫表格中通訊地址不清楚留空不填寫,這就是NULL值。
我們用Create Table語句創(chuàng)建一個表,這個表中包含列的定義。例如我們在前面創(chuàng)建了一個joke表,這個表中有content和writer兩個列:
定義一個列的語法如下:
其中列名由col_name 給出。列名可最多包含64個字符,字符包括字母、數(shù)字、下劃線及美元符號。列名可以名字中合法的任何符號(包括數(shù)字)開頭。但列名不能完全由數(shù)字組成,因為那樣可能使其與數(shù)據(jù)分不開。MySQL保留諸如SELECT、DELETE和CREATE這樣的詞,這些詞不能用做列名,但是函數(shù)名(如POS 和MIN)是可以使用的。
列類型col_type表示列可存儲的特定值。列類型說明符還能表示存放在列中的值的更大長度。對于某些類型,可用一個數(shù)值明確地說明其長度。而另外一些值,其長度由類型名蘊含。例如,CHAR(10) 明確指定了10個字符的長度,而TINYBLOB值隱含更大長度為255個字符。有的類型說明符允許指定更大的顯示寬度(即顯示值時使用多少個字符)。浮點類型允許指定小數(shù)位數(shù),所以能控制浮點數(shù)的精度值為多少。
可仔敬山以在列類型之后指定可選的類型說明屬性,以及指定更多的常見屬性。屬性起修飾類型的作用,并更改其處理列值的方式,屬性有以下類型:
(1)專用屬性用于指定列。例如,UNSIGNED 屬性只針對整型,而BINARY屬性只用于CHAR 和VARCHAR。
(2)通用屬性除少數(shù)列之外可用于任意列??梢灾付∟ULL 或NOT NULL 以表示某個列是否能夠存放NULL。還可以用DEFAULT,def_value 來表示在創(chuàng)建一個新行但未明確給出該列的值時,該列可賦予值def_value。def_value 必須為一個常量;它不能是表達式,也不能引用其他列。不能對BLOB 或TEXT 列指定缺省值。
如果想給出多個列的專用屬性,可按任意順序指定它們,只要它們跟在列類型之念中后、通用屬性之前即可。類似地,如果需要給出多個通用屬性,也可按任意順序給出它們,只要將它們放在列類型和可能給出的列專用屬性之后即可。
2. MySQL的列(字段)類型
數(shù)據(jù)庫中的每個表都是由一個或多個列(字段)構成的。在用CREATE TABLE語句創(chuàng)建一個表時,要為每列(字段)指定一個類型。列(字段)的類型比數(shù)據(jù)類型更為細化,它精確地描述了給定表列(字段)可能包含的值的種類,如是否帶小數(shù)、是否文字很多。
MySQL有整數(shù)和浮點數(shù)值的列類型,如表1所示。整數(shù)列類型可以有符號也可無符號。有一種特殊的屬性允許整數(shù)列值自動生成,這對需要唯一序列或標識號的應用系統(tǒng)來說是非常有用的。
類型說明
TINYINT 非常小的整數(shù)
ALLINT較小整數(shù)
MEDIUMINT 中等大小整數(shù)
INT標準整數(shù)
BIGINT 較大整數(shù)
FLOAT 單精度浮點數(shù)
DOUBLE雙精度浮點數(shù)
DECIMAL 一個串的浮點數(shù)
表1:數(shù)值列類型
每種數(shù)值類型的名稱和取值范圍如表2所示。
類型說明取值范圍
TINYINT有符號值:-128 到127
無符號值:0到255(0 到28 – 1)
ALLINT有符號值:到32767(- 215 到)
無符號值:0到65535(0 到)
MEDIUMINT 有符號值:到(到)
無符號值:0到(0 到)
INT 有符號值:到(- 231 到231- 1)
無符號值:0到(0 到232-1)
BIGINT 有符號值:到75807(- 263到263-1)
無符號值:0到551615(0到264 – 1)
FLOAT 最小非零值:±1.E – 38
DOUBLE 最小非零值:±2.14E – 308
DECIMAL (M, D)可變;其值的范圍依賴于M 和D
表2:數(shù)值列類型的取值范圍
類型說明存儲需求
TINYINT字節(jié)
ALLINT 2字節(jié)
MEDIUMINT3字節(jié)
INT 4字節(jié)
BIGINT8字節(jié)
FLOAT字節(jié)
DOUBLE 8字節(jié)
DECIMAL (M, D)M字節(jié)(MySQL 3.23 )
表3:數(shù)值列類型的存儲需求
MySQL提供了五種整型: TINYINT、ALLINT、MEDIUMINT、INT和BIGINT。INT為INTEGER的縮寫。這些類型在可表示的取值范圍上是不同的。整數(shù)列可定義為UNSIGNED從而禁用負值;這使列的取值范圍為0以上。各種類型的存儲量需求也是不同的。取值范圍較大的類型所需的存儲量較大。
MySQL 提供三種浮點類型: FLOAT、DOUBLE和DECIMAL。與整型不同,浮點類型不能是UNSIGNED的,其取值范圍也與整型不同,這種不同不僅在于這些類型有更大值,而且還有最小非零值。最小值提供了相應類型精度的一種度量,這對于記錄科學數(shù)據(jù)來說是非常重要的(當然,也有負的更大和最小值)。
在選擇了某種數(shù)值類型時,應該考慮所要表示的值的范圍,只需選擇能覆蓋要取值的范圍的最小類型即可。選擇較大類型會對空間造成浪費,使表不必要地增大,處理起來沒有選擇較小類型那樣有效。對于整型值,如果數(shù)據(jù)取值范圍較小,如人員年齡或兄弟姐妹數(shù),則TINYINT最合適。MEDIUMINT能夠表示數(shù)百萬的值并且可用于更多類型的值,但存儲代價較大。BIGINT在全部整型中取值范圍更大,而且需要的存儲空間是表示范圍次大的整型INT類型的兩倍,因此只在確實需要時才用。對于浮點值,DOUBLE占用FLOAT的兩倍空間。除非特別需要高精度或范圍極大的值,一般應使用只用一半存儲代價的FLOAT型來表示數(shù)據(jù)。
在定義整型列時,可以指定可選的顯示尺寸M。如果這樣,M應該是一個1 到255的整數(shù)。它表示用來顯示列中值的字符數(shù)。例如,MEDIUMINT(4)指定了一個具有4個字符顯示寬度的MEDIUMINT列。如果定義了一個沒有明確寬度的整數(shù)列,將會自動分配給它一個缺省的寬度。缺省值為每種類型的“最長”值的長度。如果某個特定值的可打印表示需要不止M個字符,則顯示完全的值;不會將值截斷以適合M個字符。
對每種浮點類型,可指定一個更大的顯示尺寸M 和小數(shù)位數(shù)D。M 的值應該取1 到255。D的值可為0 到3 0,但是不應大于M – 2(如果熟悉ODBC 術語,就會知道M 和D 對應于ODBC 概念的“精度”和“小數(shù)點位數(shù)”)。M和D對FLOAT和DOUBLE 都是可選的,但對于DECIMAL是必須的。在選項M 和D時,如果省略了它們,則使用缺省值。
2.2字符串列類型
MySQL提供了幾種存放字符數(shù)據(jù)的串類型,其類型如下:
類型名說明
CHAR 定長字符串
VARCHAR 可變長字符串
TINYBLOB 非常小的BLOB(二進制大對象)
BLOB小BLOB
MEDIUMBLOB中等的BLOB
LONGBLOB大BLOB
TINYTEXT 非常小的文本串
TEXT 小文本串
MEDIUMTEXT中等文本串
LONGTEXT大文本串
ENUM 枚舉;列可賦予某個枚舉成員
SET;列可賦予多個成員
表4:字符串列類型
下表給出了MySQL 定義串值列的類型,以及每種類型的更大尺寸和存儲需求。對于可變長的列類型,各行的值所占的存儲量是不同的,這取決于實際存放在列中的值的長度。這個長度在表中用L 表示。
類型說明
更大尺寸
存儲需求
CHAR( M)
M 字節(jié)
M 字節(jié)
VARCHAR(M)
M 字節(jié)
L + 1字節(jié)
TINYBLOB, TINYTEXT
28- 1字節(jié)
L + 1字節(jié)
BLOB, TEXT
字節(jié)
L + 2字節(jié)
MEDIUMBLOB, MEDIUMTEXT
224- 1字節(jié)
L + 3字節(jié)
LONGBLOB, LONGTEXT
232- 1字節(jié)
L + 4字節(jié)
ENUM(“value1”, “value2”, …)
65535 個成員
1 或2字節(jié)
SET (“value1”, “value2”, …)
64個成員
1、2、3、4 或8字節(jié)
表5:串列類型更大尺寸及存儲需求
L 以外所需的額外字節(jié)為存放該值的長度所需的字節(jié)數(shù)。MySQL 通過存儲值的內(nèi)容及其長度來處理可變長度的值。這些額外的字節(jié)是無符號整數(shù)。請注意,可變長類型的更大長度、此類型所需的額外字節(jié)數(shù)以及占用相同字節(jié)數(shù)的無符號整數(shù)之間的對應關系。例如,MEDIUMBLOB 值可能最多字節(jié)長并需要3 個字節(jié)記錄其結果。3 個字節(jié)的整數(shù)類型MEDIUMINT 的更大無符號值為。這并非偶然。
2.3日期時間列類型
MySQL 提供了幾種時間值的列類型,它們分別是: DATE、DATETIME、TIME、TIMESTAMP和YEAR。下表給出了MySQL 為定義存儲日期和時間值所提供的這些類型,并給出了每種類型的合法取值范圍。
類型名說明
DATE“YYYY-MM-DD”格式表示的日期值
TIME“hh:mm:ss”格式表示的時間值
DATETIME“YYYY-MM-DD hh:mm:ss”格式
TIMESTAMP“YYYYMMDDhhmmss”格式表示的時間戳值
YEAR“YYYY”格式的年份值
表6:日期時間列類型
下面舉個例子:
這個例子創(chuàng)建一個student表,這個表中有name字段,字符類型列,不允許NULL(空值)。有Chinese、Maths和English三個整數(shù)類型列。還有個Birthday日期類型列。
CREATE TABLE student
(
Name varchar(20) NOT NULL,
Chinese TINYINT(3),
Maths TINYINT(3),
English TINYINT(3),
Birthday DATE
數(shù)據(jù)庫的類型有哪些?本人在學mysql.
MySQL數(shù)據(jù)類型主要可以分成四種其中包括數(shù)值型、字符(串)型與日期和時間型與NULL值。
1. MySQL數(shù)據(jù)類型
在MySQL中有如下幾種數(shù)據(jù)類型:
(1)數(shù)值型
數(shù)值是諸如32 或153.4 這樣的值。MySQL 支持科學表示法,科學表示法由整數(shù)或浮點數(shù)后跟“e”或“E”、一個符號(“+”或“-”)和一個整數(shù)指數(shù)來表示。1.24E+12 和23.47e-1 都是合法的科學表示法表示的數(shù)。而1.24E12 不是合法的,因為指數(shù)前的符號未給出。
浮點數(shù)由整數(shù)部分、一個小數(shù)點和小數(shù)部分組成。整數(shù)部分和小數(shù)部分可以分別為空,但不能同時為空。
數(shù)值前可放一個負號“-”以表示負值。
(2)字符(串)型
字符型(也叫字符串型,簡稱串)是諸如“Hello, world!”或“一個饅頭引起的血案”這樣的值,或者是號碼這樣的值。既可用單引號也可用雙引號將串值括起來。
初學者往往分不清數(shù)值和字符串的區(qū)別。都是數(shù)字啊,怎么一 個要用數(shù)值型,一個要用字符型呢?關鍵就在于:數(shù)值型的是要參與計算的,比如它是金融中的一個貨款總額;而字符型的是不 參與計算的,只是表示號碼,這樣的還有街道號碼、門牌號碼等等,它們都不參與計算。
(3)日期和時間型
日期和時間是一些諸如“”或“12:30:43”這樣的值。MySQL還支持日期/時間的組合,如“:30:43”。
(4)NULL值
NULL表示未知值。比如填寫表格中通訊地址不清楚留空不填寫,這就是NULL值。
我們用Create Table語句創(chuàng)建一個表(參看前面的章節(jié)),這個表中包含列的定義。例如我們在前面創(chuàng)建了一個joke表,這個表中有content和writer兩個列:
定義一個列的語法如下:
其中列名由col_name 給出。列名可最多包含64個字符,字符包括字母、數(shù)字、下劃線及美元符號。列名可以名字中合法的任何符號(包括數(shù)字)開頭。但列名不能完全由數(shù)字舉逗組成,因 為那樣可能使其與MySQL數(shù)據(jù)類型分不開。MySQL保留諸如SELECT、DELETE和CREATE這樣的詞,這些詞不能用做列名,但是函數(shù)名(如POS 和MIN)是可以使用的。
列類型col_type表示列可存儲的特定值。列類型說明符還能表示存放在列中的值的更大長 度。對于某些類型,可用一個數(shù)值明確地說明其長度。而另外一些值,其長度由類型名蘊含。例如,CHAR(10) 明確指定了10個字符的長度,而TINYBLOB值隱含更大長度為255個字符。
有的類型說明符允許指定更大的顯示寬度(即顯示值時使用多少個字符)。浮 點類型允許指定小數(shù)位數(shù),所以能控制浮點數(shù)的精度值為多少。
可以在列類型之后指定可選的類型說明屬性,以及指定更多的常見屬性。屬性起修飾類型的作用,并更改其處理列值物伏的方式,屬性有以下類型:
(1)專用屬性用于指定列。例如,UNSIGNED 屬性只針對整型,而BINARY屬性只用于CHAR 和VARCHAR。
(2)通用屬性除少數(shù)列之外可用于任意列。可以指定NULL 或NOT NULL 以表示某個列是否能夠存放NULL。還可以用DEFAULT,def_value 來表示在創(chuàng)建一個新行但未明確給出該列的值時,該列可賦予值def_value。def_value 必須為一個常量;它不能是表達式,也不能引用其他罩答攜列。不能對BLOB 或TEXT 列指定缺省值。
如果想給出多個列的專用屬性,可按任意順序指定它們,只要它們跟在列類型之后、通用屬性之前即可。類似地,如果需要給出多個通用屬性,也可按任意順序給出它們,只要將它們放在列類型和可能給出的列專用屬性之后即可。
2. MySQL的列(字段)類型
數(shù)據(jù)庫中的每個表都是由一個或多個列(字段)構成的。在用CREATE TABLE語句創(chuàng)建一個表時,要為每列(字段)指定一個類型。列(字段)的類型比MySQL數(shù)據(jù)類型更為細化,它精確地描述了給定表列(字段)可能包含的值的種類,如是否帶小數(shù)、是否文字很多。
瑭錦TANJURD總結數(shù)據(jù)庫族御通常分為層次式數(shù)據(jù)庫、網(wǎng)絡式數(shù)據(jù)庫和關系式數(shù)據(jù)庫三種。而不同的數(shù)據(jù)兆櫻巖庫是按不同的數(shù)據(jù)結構來聯(lián)系頌純和組織的。
關于數(shù)據(jù)庫數(shù)值型表示方法的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
創(chuàng)新互聯(lián)【028-86922220】值得信賴的成都網(wǎng)站建設公司。多年持續(xù)為眾多企業(yè)提供成都網(wǎng)站建設,成都品牌建站設計,成都高端網(wǎng)站制作開發(fā),SEO優(yōu)化排名推廣服務,全網(wǎng)營銷讓企業(yè)網(wǎng)站產(chǎn)生價值。
本文標題:數(shù)據(jù)庫中的數(shù)值類型:儲存和表示方式(數(shù)據(jù)庫數(shù)值型表示方法)
文章源于:http://www.5511xx.com/article/cophhoi.html


咨詢
建站咨詢
