建立TABEL有兩種方式
1.透過MS SQL Management Studio
2.透過下指令的方式
先說明第一種方式,對於指令比較不熟悉的話,推薦用此方式即可。
首先開啟Management Studio,登入後,展開資料表,如下圖
2.decimal 和 numeric 這兩種是具有固定有效位數和小數位數的數值資料類型,常用在記錄金額。
因此有需要紀錄金額用來計算,通常我都會用這類型的型態。
3.int
整數型態。範圍介於2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647)
確認儲存的會是整數,或者有時候只是要註記0代表甚麼 1代表甚麼,也會以此型態紀錄。
4.datetime
時間型態,詳細記錄日期+時間,以 24 小時制為基礎的當日時間和小數秒數。
只要是時間,除非有特別註明只需存年月日,否則我自己都設定此型態,
一方面時間可以記錄比較細,另一方面萬一有需要,MS SQL也提供很多函式可以針對時間
轉換成字串,很方便。
5.ntext
MSDN說明:用來儲存非 Unicode 字元和 Unicode 字元及二進位資料的固定和可變長度資料
類型。
但我個人解讀就是,當有需要紀錄大量資料,長度超過255,我會用此型態來記錄。
以上是幾個常用的資料型態,其他部分可參考MSDN。
補充說明:
建立TABLE時,通常需要指定一個欄位(或多個)是KEY。
KEY的用意是確保資料是唯一性;若一個TABLE只設定某個欄位是KEY,
例如 ORDER這個資料表裡面的order_id是KEY,代表這個資料表若有一個
order_id值是A20170629000001,那麼A20170629000001就只會存在ORDER裡面一筆資料而已
且設定為KEY的欄位不允許為null喔!!!!
多個欄位設定為KEY代表組合鍵,
例如 設定order_id、customer,若customer值是鴻海,代表鴻海可以有多筆order_id存在資料表內。
設定KEY的方式一樣有兩種,可透過建立資料表的介面時指定;
或者用指令方式也可以。
可參考以下說明
SQL KEY
1.透過MS SQL Management Studio
2.透過下指令的方式
先說明第一種方式,對於指令比較不熟悉的話,推薦用此方式即可。
首先開啟Management Studio,登入後,展開資料表,如下圖
接著游標指到資料表按右鍵
然後填入欄位名稱(以英文+數字為主),設定資料類型(等等會說明)
設定完成後,按儲存,會跳出視窗輸入此資料表名稱,再按確定即可完成。
這是第一種方式,透過介面產生,比較簡單直覺。
第二種方式是用指令:
CREATE TABLE [dbo].[Table_test](
[TESTID] [nchar](10) NOT NULL,
[TESTNAME] [nchar](10) NOT NULL
)
CREATE TABLE 代表要建立一個資料表,後面接你要的資料表名稱
接著用()括號,裡面呈列所要的欄位名稱,和資料類型,用","逗號分隔
開啟查詢視窗,執行以上語法,即可產生一個名為Table_test的資料表,包含兩個欄位(TESTID、TESTNAME)
以上是建立資料表方式。
再來說明一下常用的SQL 資料型態
我這邊只介紹幾種我比較常用的型態
1.nvarchar、varchar、nchar、char
前面有var的代表示可變動長度,不是固定。
前面有n的代表儲存會佔 2 byte
再來,char、varchar,只能儲存英文和數字
nchar、nvarchar可儲存非英文和數字以外的字元
因此有需要紀錄金額用來計算,通常我都會用這類型的型態。
3.int
整數型態。範圍介於2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647)
確認儲存的會是整數,或者有時候只是要註記0代表甚麼 1代表甚麼,也會以此型態紀錄。
4.datetime
時間型態,詳細記錄日期+時間,以 24 小時制為基礎的當日時間和小數秒數。
只要是時間,除非有特別註明只需存年月日,否則我自己都設定此型態,
一方面時間可以記錄比較細,另一方面萬一有需要,MS SQL也提供很多函式可以針對時間
轉換成字串,很方便。
5.ntext
MSDN說明:用來儲存非 Unicode 字元和 Unicode 字元及二進位資料的固定和可變長度資料
類型。
但我個人解讀就是,當有需要紀錄大量資料,長度超過255,我會用此型態來記錄。
以上是幾個常用的資料型態,其他部分可參考MSDN。
補充說明:
建立TABLE時,通常需要指定一個欄位(或多個)是KEY。
KEY的用意是確保資料是唯一性;若一個TABLE只設定某個欄位是KEY,
例如 ORDER這個資料表裡面的order_id是KEY,代表這個資料表若有一個
order_id值是A20170629000001,那麼A20170629000001就只會存在ORDER裡面一筆資料而已
且設定為KEY的欄位不允許為null喔!!!!
多個欄位設定為KEY代表組合鍵,
例如 設定order_id、customer,若customer值是鴻海,代表鴻海可以有多筆order_id存在資料表內。
設定KEY的方式一樣有兩種,可透過建立資料表的介面時指定;
或者用指令方式也可以。
可參考以下說明
SQL KEY
留言
張貼留言