2018-11-12 數(shù)據(jù)庫基礎(chǔ)

SQL Server數(shù)據(jù)類型

  • int ---整數(shù)

  • numeric---數(shù)字

  • decimal --- 數(shù)字

  • char ---字符

  • varchar---字符

  • datetime --- 日期時間

  • int

例如在表emp中的Empon列的定義如下:
Empon int

  • numeric

numeric表示數(shù)字類型道宅,經(jīng)常被定義成numeric(p骑祟,s)形式粗仓,其中:
P表示數(shù)字的總位數(shù)
S表示小數(shù)點后面的位數(shù)
例如在表Emp中的Sal列中的定義如下:
Sal numeric(5,1)

  • char

char表示固定長度的字符類型决采,經(jīng)常被定義成char(n)形式, n表示占用的字節(jié)數(shù)佛嬉,N的最大取值是2000泛豪。例如在表Emp中的Ename列的定義如下:
Ename char(20)艺栈;
表示Ename列中最多可存儲20個字節(jié)的字符串廊敌,并且占用的空間是固定的20個字節(jié)。

  • varchar

varchar表示變長的字符類型因妙,定義格式是varchar(n), n表示最多可占用的字節(jié)數(shù)痰憎,最大長度是4000字節(jié)。
例如在表Emp中的Job列的定義如下:
Job varchar(100);
表示Job列中最多可存儲長度為100個字節(jié)的字符串攀涵。根據(jù)其中保存的數(shù)據(jù)長度铣耘,占用的空間是變化的,最大占用空間為100個字節(jié)以故。

  • datetime

datetime用于定義日期時間的數(shù)據(jù)蜗细。
例如在表Emp中的Hiredate列的定義如下:
Hiredate datetime;
表示Hiredate列中存放的是日期時間。

創(chuàng)建表

  • Create語句
CREATE TABLE [schema.]table_name(
    column_name datatype[DEFAULT expr][,…]
);

創(chuàng)建職員表的例子:

--創(chuàng)建表EMP

    CREATE TABLE emp( 
            id NUMERIC(10), 
            name VARCHAR(20), 
            gender CHAR(1), 
            birth DATETIME,
            salary NUMERIC(6,2),
            job VARCHAR(30),
            deptid NUMERIC(2) 
    ); 
  • Default

可以通過DEFAULT子句給列指定默認值怒详,例如炉媒,在emp表中給gender列賦默認值‘M’,如果插入數(shù)據(jù)時沒有指定性別的員工踪区,則默認是男性。
--創(chuàng)建表emp1

    CREATE TABLE emp1( 
            id NUMERIC(10), 
            name VARCHAR(20), 
            gender CHAR(1) DEFAULT 'M', 
            birth DATETIME,
            salary NUMERIC(6,2),
            job VARCHAR(30),
            deptid NUMERIC(2) 
    ); 
  • NOT NULL

默認情況下橱野,任何列都允許有空值朽缴。非空(Not Null)是一種約束條件,用于確保字段值不為空水援,當某個字段被設(shè)置了非空約束條件密强,這個字段中必須存在有效值,也就是說蜗元,當執(zhí)行插入數(shù)據(jù)的操作時或渤,必須提供這個列的數(shù)據(jù),當執(zhí)行更新操作時奕扣,不能給這個列的值設(shè)置為NULL薪鹦。

創(chuàng)建表emp2,設(shè)置name字段為非空惯豆,也即是表emp2中的每條記錄池磁,name列都必須有值。

    CREATE TABLE emp2( 
            id NUMERIC(10), 
            name VARCHAR(20) NOT NULL, 
            gender CHAR(1), 
            birth DATETIME,
            salary NUMERIC(6,2),
            job VARCHAR(30),
            deptid NUMERIC(2) 
    ); 
  • 修改表

  • 修改表名
    在建表后如果希望修改表名楷兽,可以使用RENAME語句實現(xiàn)地熄,語法如下,將改變表名
old_name為new_name:
sp_rename old_name, new_name;

舉例說明芯杀,如果要將表名emp修改為employee端考,使用如下語法:

sp_rename emp,employee;
  • 增加列
    在建表之后,要給表增加列可以使用ALTER TABLE的ADD子句實現(xiàn)揭厚。語法如下:
ALTER TABLE table_name ADD
column datatype [DEFAULT expr]

注意一點却特,列只能增加在最后,不能插入到現(xiàn)有的列中筛圆。下例給表employee增加一列hiredate裂明,并設(shè)置默認值為當前日期。

ALTER TABLE employee ADD 
    hiredate DATE DEFAULT getdate();
  • 刪除列

在建表之后太援,使用ALTER TABLE的DROP子句刪除不需要的列漾岳。語法如下:

     ALTER TABLE table_name DROP column column_name; 

刪除字段需要從每行中刪掉該字段占據(jù)的長度和數(shù)據(jù),并釋放在數(shù)據(jù)塊中占據(jù)的空間粉寞,如果表記錄比較大,刪除字段可能需要比較長的時間左腔。
下例刪除表employee的列hiredate:

    ALTER TABLE employee DROP column hiredate;
  • 修改列

建表之后唧垦,可以改變表中列的數(shù)據(jù)類型、長度和默認值液样,注意這種修改僅對以后插入的數(shù)據(jù)有效振亮,另外如果表中已經(jīng)有數(shù)據(jù)的情況下巧还,把長度由大改小,有可能不成功坊秸,比如原來的類型是VARCHAR(100),其中已經(jīng)存放了100個字節(jié)長度的數(shù)據(jù)麸祷,如果要改為VARCHAR(80),則不會修改成功褒搔。
語法如下:

    ALTER TABLE table_name 
    ALTER column column_name datatype

下例修改表emp loyee的列job阶牍,并增加默認值的設(shè)置;

ALTER TABLE employee ALTER column job VARCHAR(40);
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末星瘾,一起剝皮案震驚了整個濱河市走孽,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌琳状,老刑警劉巖磕瓷,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異念逞,居然都是意外死亡困食,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進店門翎承,熙熙樓的掌柜王于貴愁眉苦臉地迎上來硕盹,“玉大人,你說我怎么就攤上這事审洞±痴觯” “怎么了?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵芒澜,是天一觀的道長仰剿。 經(jīng)常有香客問我,道長痴晦,這世上最難降的妖魔是什么南吮? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮誊酌,結(jié)果婚禮上部凑,老公的妹妹穿的比我還像新娘。我一直安慰自己碧浊,他們只是感情好涂邀,可當我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著箱锐,像睡著了一般比勉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天浩聋,我揣著相機與錄音观蜗,去河邊找鬼。 笑死衣洁,一個胖子當著我的面吹牛墓捻,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播坊夫,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼砖第,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了践樱?” 一聲冷哼從身側(cè)響起厂画,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎拷邢,沒想到半個月后袱院,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡瞭稼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年忽洛,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片环肘。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡欲虚,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出悔雹,到底是詐尸還是另有隱情复哆,我是刑警寧澤,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布腌零,位于F島的核電站梯找,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏益涧。R本人自食惡果不足惜锈锤,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望闲询。 院中可真熱鬧久免,春花似錦、人聲如沸扭弧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鸽捻。三九已至丁寄,卻和暖如春氨淌,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背伊磺。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留删咱,地道東北人屑埋。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像痰滋,于是被迫代替她去往敵國和親摘能。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn) # https://www.cnblogs.com/easypass/archive/2010/12/ 08/...
    呂品?閱讀 9,723評論 0 44
  • 我已經(jīng)連續(xù)兩個晚上做了關(guān)于你的夢敲街,雖然你早就從我的生活里消失了…… 我們分開快四年了团搞,我繼續(xù)過著我喜歡的生活,有朋...
    城睎閱讀 94評論 0 0
  • 用腦學(xué)習(xí)知識多艇,用手學(xué)習(xí)技能逻恐,用心學(xué)習(xí)態(tài)度。把知識學(xué)以致用峻黍,把技能練成藝術(shù)复隆,那么你用心相信的東西就一定會實現(xiàn)。
    SyoCga閱讀 175評論 0 0
  • “你肚子上怎么會有一坨肉?” 剖宮產(chǎn)縫合時骨饿,醫(yī)生對我如是說亏栈。 看著產(chǎn)后皺巴巴的肚皮,像泄了氣的皮球宏赘,我欲哭無淚绒北。 ...
    40789bf09437閱讀 291評論 0 0
  • 1、根據(jù)產(chǎn)品id查詢產(chǎn)品/product/findProductByProductSn參數(shù):param:{prod...
    西北狂刀閱讀 431評論 0 0