SQL 修改字段類型和長度,常見類型介紹及數據庫設計工具PowerDesigner和astah

1.電話字段設置24個Byte居然不夠,好吧設置爲50的長度。

alter table <表名> alter column <字段名> 新類型名(長度)
舉例:
alter table T_CustomerFile alter MobilePhoneNumber nvarchar(50)

 2.刪除一個表,整個表在數據庫中消失

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[T_ABC]') AND type in (N'U'))

DROP TABLE [dbo].[T_ABC]

三、整型bigint、int、smallint、tinyint的區別

bigint
從 -2^63 (-9223372036854775808) 到 2^63-1(9223372036854775807) 的整型數據
(全部數字)。存儲大小爲 8 個字節。
 
int
從 -2^31 (-2,147,483,648) 到 2^31 - 1(2,147,483,647) 的整型數據(全部數字)。
存儲大小爲 4 個字節。int 的 SQL-92 同義字爲 integer。
 
smallint
從 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型數據。存儲大小爲 2 個字節。
 
tinyint
從 0 到 255 的整型數據。存儲大小爲 1 字節。

 四、varchar、nvarchar、char、nchar

varchar(n)
長度爲 n 個字節的可變長度且非 Unicode 的字符數據。n 必須是一個介於 1 和 8,000 之間的數值。存儲大小爲輸入數據的字節的實際長度,而不是 n 個字節。

nvarchar(n)
包含 n 個字符的可變長度 Unicode 字符數據。n 的值必須介於 1 與 4,000 之間。字節的存儲大小是所輸入字符個數的兩倍。
數據庫

 如字段值只是英文可選擇varchar,而字段值存在較多的雙字節(中文等)字符時用nvarchar數據庫設計

 

char的長度是不可變的,而varchar的長度是可變的。char的存取數度比varchar要快得多,由於其長度固定,方便程序的存儲與查找;char爲此付出的是空間的代價,由於其長度固定,因此不免會有多餘的空格佔位符佔據空間,可謂是以空間換取時間效率,而varchar是以空間效率爲首位的大數據

 

nchar的長度是不可變的,Unicode字符數據。spa

 

char,varchar 最多8000個英文,4000個漢字
nchar,nvarchar 可存儲4000個字符,不管英文仍是漢字

TEXT.net

text存儲可變長度的非Unicode數據,最大長度爲2^31-1(2,147,483,647)個字符。設計

ntext
可變長度 Unicode 數據的最大長度爲 2^30 - 1 (1,073,741,823) 個字符。存儲大小是所輸入字符個數的兩倍(以字節爲單位)。ntext 在 SQL-92 中的同義詞是 national text。code

 

若是數據量很是大,又能100%肯定長度且保存只是ansi字符,那麼使用char
能肯定長度又不必定是ansi字符或者,那麼使用nchar
對於超大數據,如文章內容,使用nText 
其餘的通用nvarcharblog

 五、DECIMAL(P,D)

表示列能夠存儲D位小數的P位數。十進制列的實際範圍取決於精度和刻度。get

剩餘數字
0 0
1–2 1
3–4 2
5–6 3
7-9 4

例如:DECIMAL(19,9)對於小數部分具備9位數字,對於整數部分具備19位-9位 = 10位數字,小數部分須要4個字節。 整數部分對於前9位數字須要4個字節,1個剩餘字節須要1個字節。DECIMAL(19,9)列總共須要9個字節。it

 

PowerDesigner  和 astah professional 

業務比較簡單的數據庫設計,使用PowerDesigner就夠了。

 

點擊新建新模型->Categories->Infomation->Physical Data,便可開啓數據庫表結構設計之旅。

設計好的數據庫表結構,雙擊在「Table Properties」標籤頁下,有一個「Preview」的標籤,打開,便可看到對應數據庫表設計的SQL語句。直接複製到MSSQLServer、Oracle或其餘數據庫的執行窗口,執行便可建立。

 

若是業務相對複雜,可使用astah professional版原本進行業務和數據庫設計,在astah的主界面的tools->ER Diagram->Export Sql... 能夠導出對應的SQL語句。

 

參考

https://blog.csdn.net/nutony/article/details/8510269

http://www.javashuo.com/article/p-kfeggfse-gu.html

相關文章
相關標籤/搜索