當前位置:首頁 » 編程語言 » sql建表數據類型
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql建表數據類型

發布時間: 2022-10-03 06:30:40

『壹』 sql建表,但是數據類型要填什麼我在表裡一直打不了字。

數據類型只能選,每種資料庫都定義好了自己的數據類型,你根據你建的每一個欄位的實際類型來選擇資料庫對應的數據類型就好了,比如「編號」可以是int類型也可以是char/nchar。

『貳』 sql里建表時怎樣才能知道該用什麼數據類型

根據你此列放什麼數據來確定欄位類型。

比如「成績」,可能要用來運算,設置成數值型。

比如「學號」,不用來計算,有時可能還要以0來打頭,設置成字元型,

「出生日期」,當然是日期型,或日期時間型。

「團員」欄位,邏輯型,因為就兩種選擇,是或否

「簡歷」欄位,要寫的內容可能比較多,設置成備注型。

多看幾個表的結構,就會設置了。

『叄』 關於SQL Server 2008創建表時的數據類型!!!!

nchar(n)

包含 n 個字元的固定長度Unicode字元數據。n 的值必須介於1 與 4,000 之間。存儲大小為 n 位元組的兩倍。nchar 在 SQL-92 中的同義詞為 national char 和 national character。

nvarchar(n)

包含 n 個字元的可變長度 Unicode 字元數據。n 的值必須介於 1 與 4,000 之間。位元組的存儲大小是所輸入字元個數的兩倍。所輸入的數據字元長度可以為零。nvarchar 在 SQL-92 中的同義詞為 national char varying 和 national character varying。

注釋

如果沒有在數據定義或變數聲明語句中指定 n,則默認長度為 1。如果沒有使用 CAST 函數指定 n,則默認長度為 30。

如果希望列中所有數據項的大小接近一致,則使用 nchar。

如果希望列中數據項的大小差異很大,則使用 nvarchar。

使用 nchar 或 nvarchar 的對象被賦予資料庫的默認排序規則,除非使用 COLLATE 子句賦予特定的排序規則。

SET ANSI_PADDING OFF 不適用於 nchar 或 nvarchar。SET ANSI_PADDING ON 永遠適用於 nchar 和 nvarchar。

二、char 和 varchar

固定長度 (char) 或可變長度 (varchar) 字元數據類型。

char[(n)]

長度為 n 個位元組的固定長度且非 Unicode 的字元數據。n 必須是一個介於 1 和 8,000 之間的數值。存儲大小為 n 個位元組。char 在 SQL-92 中的同義詞為 character。

varchar[(n)]

長度為 n 個位元組的可變長度且非 Unicode 的字元數據。n 必須是一個介於 1 和 8,000 之間的數值。存儲大小為輸入數據的位元組的實際長度,而不是 n 個位元組。所輸入的數據字元長度可以為零。varchar 在 SQL-92 中的同義詞為 char varying 或 character varying。

注釋

如果沒有在數據定義或變數聲明語句中指定 n,則默認長度為 1。如果沒有使用 CAST 函數指定 n,則默認長度為 30。

將為使用 char 或 varchar 的對象被指派資料庫的默認排序規則,除非用 COLLATE 子句另外指派了特定的排序規則。該排序規則控制用於存儲字元數據的代碼頁。

支持多語言的站點應考慮使用 Unicode nchar 或 nvarchar 數據類型以盡量減少字元轉換問題。如果使用 char 或 varchar:

如果希望列中的數據值大小接近一致,請使用 char。

如果希望列中的數據值大小顯著不同,請使用 varchar。

如果執行 CREATE TABLE 或 ALTER TABLE 時 SET ANSI_PADDING 為 OFF,則一個定義為 NULL 的 char 列將被作為 varchar 處理。

當排序規則代碼頁使用雙位元組字元時,存儲大小仍然為 n 個位元組。根據字元串的不同,n 個位元組的存儲大小可能小於 n 個字元。

總結:

1、 varchar:

可變長度的非 Unicode 數據,最長為 8,000 個字元。

2、nvarchar:

可變長度 Unicode 數據,其最大長度為 4,000 字元。

3、char:

固定長度的非 Unicode 字元數據,最大長度為 8,000 個字元。

4、nchar

固定長度的 Unicode 數據,最大長度為 4,000 個字元。

5、 char和varchar都是字元串類型的

用Unicode編碼的字元串,結果是字元的整數值

『肆』 sql中設計表時數據類型問題

你好,很高興回答你的問題。

錯誤不是因為數據類型。

如圖中所示,錯誤信息已經說明了原因了,你建表語句中要引用的表不存在。

『伍』 sql資料庫中常用的數據類型有什麼

一、整數數據類型:整數數據類型是最常用的數據類型之一。

1、INT(INTEGER)

INT (或INTEGER)數據類型存儲從-2的31次方 (-2 ,147 ,483 ,648) 到2的31次方-1 (2 ,147 ,483,647) 之間的所有正負整數。每個INT 類型的數據按4 個位元組存儲,其中1 位表示整數值的正負號,其它31 位表示整數值的長度和大小。

2、SMALLINT

SMALLINT 數據類型存儲從-2的15次方( -32, 768) 到2的15次方-1( 32 ,767 )之間的所有正負整數。每個SMALLINT 類型的數據佔用2 個位元組的存儲空間,其中1 位表示整數值的正負號,其它15 位表示整數值的長度和大小。

二、浮點數據類型:浮點數據類型用於存儲十進制小數。浮點數值的數據在SQL Server 中採用上舍入(Round up 或稱為只入不舍)方式進行存儲。

1、REAL數據類型

REAL數據類型可精確到第7 位小數,其范圍為從-3.40E -38 到3.40E +38。 每個REAL類型的數據佔用4 個位元組的存儲空間。

2、FLOAT

FLOAT數據類型可精確到第15 位小數,其范圍為從-1.79E -308 到1.79E +308。 每個FLOAT 類型的數據佔用8 個位元組的存儲空間。 FLOAT數據類型可寫為FLOAT[ n ]的形式。n 指定FLOAT 數據的精度。n 為1到15 之間的整數值。

當n 取1 到7 時,實際上是定義了一個REAL 類型的數據,系統用4 個位元組存儲它;當n 取8 到15 時,系統認為其是FLOAT 類型,用8 個位元組存儲它。

三、二進制數據類型

1、BINARY

BINARY 數據類型用於存儲二進制數據。其定義形式為BINARY( n), n 表示數據的長度,取值為1 到8000 。在使用時必須指定BINARY 類型數據的大小,至少應為1 個位元組。BINARY 類型數據佔用n+4 個位元組的存儲空間。

在輸入數據時必須在數據前加上字元「0X」 作為二進制標識,如:要輸入「abc 」則應輸入「0xabc 」。若輸入的數據過長將會截掉其超出部分。若輸入的數據位數為奇數,則會在起始符號「0X 」後添加一個0,如上述的「0xabc 」會被系統自動變為「0x0abc」。

2、VARBINARY

VARBINARY數據類型的定義形式為VARBINARY(n)。 它與BINARY 類型相似,n 的取值也為1 到8000, 若輸入的數據過長,將會截掉其超出部分。

不同的是VARBINARY數據類型具有變動長度的特性,因為VARBINARY數據類型的存儲長度為實際數值長度+4個位元組。當BINARY數據類型允許NULL 值時,將被視為VARBINARY數據類型。

四、邏輯數據類型

1、BIT:BIT數據類型佔用1 個位元組的存儲空間,其值為0 或1 。如果輸入0 或1 以外的值,將被視為1。 BIT 類型不能定義為NULL 值(所謂NULL 值是指空值或無意義的值)。

五、字元數據類型:字元數據類型是使用最多的數據類型。它可以用來存儲各種字母、數字元號、特殊符號。一般情況下,使用字元類型數據時須在其前後加上單引號』或雙引號」 。

1、CHAR

CHAR 數據類型的定義形式為CHAR[ (n) ]。 以CHAR 類型存儲的每個字元和符號佔一個位元組的存儲空間。n 表示所有字元所佔的存儲空間,n 的取值為1 到8000, 即可容納8000 個ANSI 字元。

若不指定n 值,則系統默認值為1。 若輸入數據的字元數小於n,則系統自動在其後添加空格來填滿設定好的空間。若輸入的數據過長,將會截掉其超出部分。

(5)sql建表數據類型擴展閱讀:

SQL包括了所有對資料庫的操作,主要是由4個部分組成:

1、數據定義:這一部分又稱為「SQL DDL」,定義資料庫的邏輯結構,包括定義資料庫、基本表、視圖和索引4部分。

2、數據操縱:這一部分又稱為「SQL DML」,其中包括數據查詢和數據更新兩大類操作,其中數據更新又包括插入、刪除和更新三種操作。

3、數據控制:對用戶訪問數據的控制有基本表和視圖的授權、完整性規則的描述,事務控制語句等。

4、嵌入式SQL語言的使用規定:規定SQL語句在宿主語言的程序中使用的規則。

『陸』 創建表的sql語句

創建表的sql語句是CREATE TABLE。

SQL CREATE TABLE是SQL語言的建表語句,用於創建資料庫中的表。基礎語法為:CREATE TABLE table (field1 type [(size)] [NOT NULL] [index1] [, field2 type [(size)] [NOT NULL] [index2] [, ...]] [, CONSTRAINT multifieldindex [, ...]])。

table參數用於指定新建表的名稱。field1,field2用於指定在新表中創建的新欄位的名稱,每創建一個新表必須至少創建一個欄位。type參數用來指定新建欄位的數據類型。size參數用於指定文本及二進制欄位的長度。

NOT NULL是SQL的關鍵字,使用該參數則新記錄的該欄位值必須是有效的數據。在一個欄位上只能使用一次NOT NULL參數,否則會出錯。index1, index2參數是定義單一欄位索引的CONSTRAINT子句。

multifieldindex參數是定義多重欄位索引的CONSTRAINT子句。

數據類型:

1、integer(size):僅容納整數。在括弧內規定數字的最大位數。

2、int(size):僅容納整數。在括弧內規定數字的最大位數。

3、smallint(size):僅容納整數。在括弧內規定數字的最大位數。

4、tinyint(size):僅容納整數。在括弧內規定數字的最大位數。

5、decimal(size,d):容納帶有小數的數字。"size"規定數字的最大位數。"d"規定小數點右側的最大位數。

6、numeric(size,d):容納帶有小數的數字。"size"規定數字的最大位數。"d"規定小數點右側的最大位數。

7、char(size):容納固定長度的字元串。在括弧中規定字元串的長度。

8、varchar(size):容納可變長度的字元串。在括弧中規定字元串的長度。

9、date(yyyymmdd):容納日期。

『柒』 SQL Server常用數據類型

SQL Server常用數據類型

數據類型是數據的一種屬性,是數據所表示信息的類型。下面是我為大家搜索整理了關於SQLServer常用數據類型,歡迎參考閱讀,希望對大家有所幫助。

SQLServer2000提供了比較多的數據類型供用戶使用,包括字元型數據類型、數值型數據類型、貨幣型數據類型、日期/時間型數據類型等。

一、字元型數據類型

字元型數據類型是使用最多的數據類型。它可以用來存儲各種字母、數字元號、特殊符號。在使用字元類型數據時,必須為其加上單引號。若將數值數據包括在單引號中,將被視為字元類型數據。一般來說,字元型數據類型有兩種基本形式:

(一)CHAR定長字元型數據類型

CHAR數據類型的定義形式為CHAR(n),n為長度,n的取值范圍為1-8000,共佔n個位元組。若存儲的字元串長度小於n,則系統自動使用空格填補剩餘的位置。若存儲的字元串長度大於n,那麼在執行插入記錄語句時將導致執行錯誤。

(二)VARCHAR變長字元型數據類型

VARCHAR數據類型的定義形式為VARCHAR(n),最大長度為n,n的取值范圍為1-8000。VARCHAR數據類型的存儲長度為實際字元串的長度,若存儲的字元串長度小於n,系統不會使用空格填補剩餘的位置。VARCHAR數據類型通常用於存放長度變化較大的字元串,這樣可以節約大量的存儲空間。但是使用varn)數據類型的缺點是,這種變長的存儲方法使得用戶無法確切地估計存儲數據所使用的空間大小。

二、數值型數據類型

數值型數據類型包括整型數據類型、數字數據類型和浮點數據類型三種。

(一)整型數據類型

整型數據類型只存儲整數。整型數據類型包括以下四種:

bigint數據類型

bigint數據類型佔8個位元組,共64位,能夠存儲-263~263-1之間的所有正負整數。在64位中,63位用來存儲數值,1位用來存儲數值的正負。

int數據類型

int數據類型佔4個位元組,共32位,能夠存儲-231~231-1之間的所有正負整數。在32位中,31位用來存儲數值,1位用來存儲數值的正負。

smallint數據類型

smallint數據類型佔2個位元組,共16位,能夠存儲-215~215-1之間的所有正負整數。在16位中,15位用來存儲數值,1位用來存儲數值的正負。

(二)數字數據類型

數字數據類型包括decimal數據類型和numeric數據類型兩種,numeric數據類型與decimal數據類型完全相同。decimal數據類型可以提供小數所需要的實際存儲空間,decimal數據類型最多可存儲38位數字。

decimal數據類型的定義形式為decimal(p,s)。

其中:

p:為指定精度或對象能夠控制的數字個數。

s:為指定可放到小數點右邊的小數位數或數字個數。

p和s必須遵守以下規則:0<=s<=p<=38。

(三)浮點數據類型

浮點數據類型包括float數據類型和real數據類型,這兩種數據類型被稱為近似數據類型。

real數據類型

real數據類型佔4個位元組,共32位,能夠存儲-3.40E+38~3.40E+38之間所有的浮點數。

float數據類型

float數據類型佔8個位元組,共64位,能夠存儲-1.79E+308~1.79E+308之間所有的浮點數。float數據類型可精確到第15位小數。float數據類型可以定義為float(n),n為數據的精度。若n取1到7時,實際上是定義了一個real類型的數據,系統將分配4個位元組的.空間存儲數據;若n取8到15時,系統認為其是float類型,將分配8個位元組的空間存儲數據。

三、貨幣型數據類型

貨幣型數據類型用於存儲貨幣值。在SQLServer2000中提供兩種貨幣型數據類型:money數據類型和smallmoney數據類型。

(一)money數據類型

money數據類型使用8個位元組存儲數據,由兩部分組成,前面4個位元組表示貨幣值的整數部分,後面4個位元組表示貨幣值的小數部分。

(二)smallmoney數據類型

smallmoney數據類型類似於money類型,使用4個位元組存儲數據,前面2個位元組表示貨幣值的整數部分,後面2個位元組表示貨幣值的小數部分。

四、日期/時間型數據類型

日期/時間型數據類型用於存儲日期和時間的結合體。

(一)datetime數據類型

datetime數據類型可以存儲從公元1753年1月1日零時起到公元9999年12月31日23時59分59秒之間的所有日期和時間,其精確度可達三百分之一秒。datetime數據類型佔用8個位元組的存儲空間。

(二)smalldatetime數據類型

smalldatetime數據類型與datetime數據類型相似,但其日期時間范圍較小,可以存儲從1900年1月1日到2079年6月6日,精度可以達到分鍾。smalldatetime數據類型佔用4個位元組的存儲空間。

SQL Server vNext on Linux安裝

今天微軟正式發布上SQL Server 2016 SP1,根據以往的SP1定律,可以在生產環境上使用了。打了SP1的標准版將具有企業版幾乎所有的的功能。只有RAM 超過128GB或者超過24核心或者超過4路的環境才必須要安裝企業版。

還有一個重要的發布:SQL Server vNext on Linux。也是本文介紹安裝的版本。長話短說,開始安裝。

這個版本的SQL Server,官方支持的平台是Red Hat Enterpise 7.2 或者Ubuntu 16.04。但是我手上暫時沒有Red Hat,就用CentOS 7.2試試。我是以root身份安裝的。

1. 安裝

#下載庫配置文件curl https://packages.microsoft.com/config/rhel/7/mssql-server.repo > /etc/yum.repos.d/mssql-server.repo#安裝sudo yum install -y mssql-server

2. 運行配置文件

#運行SQL Server的配置文件進行配置。#這個過程會要你同意License條款,設置SA密碼,設置SQL Server服務開機啟動/opt/mssql/bin/sqlservr-setup

3. 檢查服務狀態

#檢查SQL Server的服務狀態systemctl status mssql-server

4. 修改防火牆

#修改防火牆,允許1433埠systemctl start firewalldfirewall-cmd --zone=public --add-port=1433/tcp --permanentfirewall-cmd --reload

5. 安裝SQL工具,包括sqlcmd和bcp

#下載源的庫配置文件curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo#安裝toolsyum install mssql-tools

6. 連接測試

# 使用sqlcmd的本地連接。直接在-P參數後填密碼或者回車後輸入密碼。sqlcmd -S . -U SA -p

發現sqlcmd的使用方式和windows下是一樣的。返回內容最後有一個根據當前查詢的耗時預估的每秒事務處量。

然後建個庫,建個表試試。

遠程連接。從windows使用sqlcmd,用外網IP連接

使用SSMS連接,我使用是SQL 2014安裝時自帶SSMS,可能會有一些不支持問題。可以看到Agent沒啟動的,實際上是這個版本沒有Agent。

有意思的是,使用SSMS可以創建庫,卻不能創建表。從錯誤信息來看,似乎是不支持圖形界面創建表。

總結:

嘗鮮性地測試一下,有機會還會測試更多功能。目前不支持Agent,復制和大部分BI功能組件。

很多人對SQL Server On Linux是有所期待。如果它在Linux上的表現與之在以往Windows上的表現一樣優秀的話,我相信會有更多人會使用它的。

SQL Server On Linux的更多文檔內容:SQL Server on Linux Documentation

;

『捌』 SQL建立表的時候,裡面的數據類型都是什麼意思啊

SQL 數據類型
Microsoft Jet 資料庫引擎 SQL 數據類型 由13個基本數據類型組成,它們是由 Microsoft Jet 資料庫引擎和幾個驗證過的有效同義字定義的。

下面的表格列出了主要數據類型。這些同義字在 Microsoft Jet 資料庫引擎 SQL 保留字中被識別。

數據類型 存儲大小 說明
BINARY 每個字元佔一個位元組 任何類型的數據都可存儲在這種類型的欄位中。不需數據轉換(例如,轉換到文本數據)。數據輸入二進制欄位的方式決定了它的輸出方式。
BIT 1 個位元組 Yes 和 No ,以及只包含這兩個數值之一的欄位。
TINYINT 1 個位元組 介於 0 到 255 之間的整型數。
MONEY 8 個位元組 介於 – 922,337,203,685,477.5808 到 922,337,203,685,477.5807 之間的符號整數。
DATETIME
(清參閱 DOUBLE ) 8 個位元組 介於 100 到 9999 年的日期或時間數值。
UNIQUEIDENTIFIER 128 個位 用於遠程過程調用的唯一識別數字。
REAL 4 個位元組 單精度浮點數,負數范圍是從 –3.402823E38 到 –1.401298E-45,正數從1.401298E-45 到 3.402823E38,和 0。
FLOAT 8 個位元組 雙精度浮點數,負數范圍是從 –1.79769313486232E308 到 –4.94065645841247E-324,正數從 4.94065645841247E-324 到 1.79769313486232E308,和 0。
SMALLINT 2 個位元組 介於 –32,768 到 32,767 的短整型數。
INTEGER 4 個位元組 介於 –2,147,483,648 到 2,147,483,647 的長整型數。
DECIMAL 17 個位元組 容納從 1028 - 1到 - 1028 - 1. 的值的精確的數字數據類型。你可以定義精度 (1 - 28) 和 符號 (0 - 定義精度)。預設精度和符號分別是18和0。
TEXT 每一字元兩位元組(參見注意) 從零到最大 2,14 千兆位元組。
IMAGE 視實際需要而定 從零到最大 2,14 千兆位元組。用於 OLE 對象。
CHARACTER 每一字元兩位元組(參見注意) 長度從 0 到 255 個字元。

--------------------------------------------------------------------------------

注意

可以用ALTER TABLE 語句修正基數和增量。剛插進表中的行會有自動為基於新種值和增量值的列生成的值。如果新種和增長的值和以前的種值及增量匹配,就會造成復制。如果這個列是主鍵,復制值生成時可能導致錯誤。

定義成TEXT也稱作MEMO)或CHAR(也稱作有具體長度的 TEXT(n))的欄位中的字元被儲存在 Unicode 表示格式。Unicode字元一律需要兩個位元組存儲每一字元。對於現有的主要包含字元數據的 Microsoft Jet資料庫,這可能意味著資料庫文件被轉換成 Microsoft Jet 4.0格式時字長會增加將近一倍。然而,從前由單位元組字元群(SBCS)指示的眾多字元群的Unicode 表示可以很容易地被壓縮成一個單位元組。 有關的詳細信息,參見 CREATE TABLE。如果用COMPRESSION屬性定義CHAR列,數據存儲時會自動被壓縮,提取時解壓縮。

『玖』 建SQL表時身份證號碼的數據類型最好選什麼

建SQL表時,身份證號碼為固定18位長,對該欄位最好採用char數據類型。

char類型對英文字元佔用1個位元組,對一個漢字佔用2個位元組,而且char存儲定長數據很方便,char欄位上的索引效率極高。

比如:定義char(10),那麼不論你存儲的數據是否達到了10個位元組,都要佔去10個位元組的空間,不夠的字元用空格去填。因為是固定長度,所以速度效率高。



(9)sql建表數據類型擴展閱讀

比較SQL中的char、varchar、nchar、nvarchar的區別

1、前面加「n」與不加「n」

char、varchar這兩個只能用於單位元組來存儲數據,適合英文,中文會不兼容。常用的漢字需要用兩個位元組來存儲,所以就要使用nchar、nvarchar。

char、varchar因為是單位元組的所以在存儲的時候最大數值可以達到8000,而nchar、nvarchar是最大數值4000。

2、char與varchar的區別

直接舉例子:char(10)就是給予一個固定的空間,不管存儲的內容有沒有到達10個位元組,都佔用10個位元組的空間,同時,varchar(10)和nvarchar(10)的最大空間只能為10位元組,如果不到10位元組就不佔用10位元組。

『拾』 sql server 2000中建表時,裡面的數據類型是什麼意思

所謂數據類型就是以數據的表現方式和存儲方式來劃分的數據的種類。
舉個通俗點的例子:
2010-08-01 10:00:00//這個東西你一看就知道是時間
712//這個是數字七百一十二
weuuytg//這個是一串字元
我想這上面的東西你一看就知道它是什麼。為什麼呢?因為這是規則。
sql定義數據類型也一樣,把符合一定規則的東西定義成一種數據類型,並提供一些方法供你使用。
例如:
"234"和"897"
如果你把上面的東西都當成是一串字元而不是數字,如何做比較呢?
所以你就可以把這樣的數據定義成整型或數值型,這樣就可以進行判斷比較了。