




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第2講數據表的創(chuàng)建與管理一.基礎知識表是數據庫中存儲數據的基本對象。在設計數據庫結構時,一個重要的工作就是設計表結構。表結構的設計通常需要考慮下面的因素:數據庫中包含哪些表;每個表中包含哪些字段;表中字段的屬性,包括字段的數據類型、寬度、默認值等1、SQLServer的基本數據類型
(1)二進制數據Binary:固定長度的二進制數據Varbinary:變長的二進制數據類型Image:可以用來存儲超過8KB的可變長度的二進制數據。存儲MicrosoftWord文檔、MicrosoftExcel電子表格、包含位圖的圖像、GIF文件和JPEG文件等多種格式的數據。(2)字符數據:由字母、符號和數字組成。Char:固定長度的字符數據類型。Char[(n)]表示長度為n個字節(jié)的固定長度且非Unicode的字符數據。Varchar:非固定長度的字符數據類型。Varchar[(n)]表示長度最多為n個字節(jié)的可變長度且非Unicode的字符數據。Text:存儲可變長度的非Unicode數據,可用于存儲大于8KB的ASCII字符。最大長度為231-1(2,147,483,647)個字符在設計表結構時,如果需要存儲的字符數據長度小于8KB,則使用Char或Varchar。使用Varchar數據類型可以按照數據的實際長度進行存儲,從而節(jié)省存儲空間。當數據長度超過8KB時,使用Text數據類型進行存儲。例如,由于HTML文檔均由ASCII字符組成,而且一般長于8KB,所以在SQLServer中通常把HTML文檔存儲在Text列中。(3)Unicode數據
Unicode字符集就是為了解決字符集不兼容的問題而產生的,它所有的字符都用兩個字節(jié)表示,即英文字符也是用兩個字節(jié)表示
Nchar,
Nvarchar,Ntext:(4)日期和時間數據日期和時間數據使用Datetime和Smalldatetime數據類型存儲。Datetime:從1753年1月1日到9999年12月31日的日期和時間數據Smalldatetime:從1900年1月1日到2079年6月6日的日期和時間數據,精確到分鐘。(5)數字數據SQLServer的數字數據包括正數、負數、小數、分數和整數。Bigint:-263~263-1之間的所有整型數據。l
Int:-231~231-1之間的所有整型數據。Smallint:-215(-32768)~215-1(32767)之間的整型數據。Tinyint:0~255之間的整型數據。Decimal和Numeric:帶定點精度和小數位數的數字數據類型。Decimal[(p[,s])]和Numeric[(p[,s])]表示定點精度和小數位數。p表示精度Float[(n)]:-1.79E+308~1.79E+308之間的浮點數字數據。Real:-3.40E+38~3.40E+38之間的浮點數字數據。(6)貨幣數據貨幣數據表示正的或負的貨幣值。在MicrosoftSQLServer中使用Money和Smallmoney數據類型存儲貨幣數據。Money:貨幣數據值介于-263~263-1。Smallmoney:貨幣數據值介于-214748.3648~+214748.3647之間。(7)特殊數據特殊數據包括不能用前面所述的二進制、字符、Unicode、日期和時間、數字和貨幣數據類型表示的數據。SQLServer包含四種特殊數據類型:timestamp
bit:bit數據類型只能包括0或1。uniqueidentifiertableSQLServer數據庫中,數據表的基本操作有:表的創(chuàng)建、修改、刪除記錄的插入、修改、刪除實現這些操作主要有二種途徑:使用企業(yè)管理器通過T-SQL語句創(chuàng)建表
二.
SQLServer數據表的基本操作(1)創(chuàng)建表:展開企業(yè)管理器上的數據庫節(jié)點,從中選擇一個要建立表的數據庫,在鼠標右鍵單擊出來的快捷菜單中選擇“新建”,子菜單,選擇“表”命令。第一列中輸入列名,第二列選擇數據類型,第三列輸入長度,第四列選擇是否為空(2)修改表:從樹形結構展開要修改定義的表所在數據庫,并選中該數據庫節(jié)點下面的表節(jié)點,在企業(yè)管理器右側顯示出該數據庫下全部表格。選擇要修改的表,單擊鼠標右鍵,從彈出的快捷菜單中選擇“設計表”命令,其余操作和最初建立表格時一樣
1、使用企業(yè)管理器(3)刪除表:若要刪除表,則基本表的定義、表中的數據、索引,以及由此表導出的視圖定義都被刪除,而且所有的內容被刪除后無法恢復。只有有權限的人員才能刪除表。刪除操作不能刪除正在用于外鍵碼約束引用的表,要刪除此類表,必須先刪除引用的外鍵碼約束或刪除引用的表
從樹形結構展開要修改定義的表所在數據庫,并選中該數據庫節(jié)點下面的表節(jié)點,在企業(yè)管理器右側顯示出該數據庫下全部表格。選擇要修改的表,單擊鼠標右鍵,從彈出的快捷菜單中選擇“刪除”—“全部除去”命令,即可(4)插入記錄:
展開“數據庫”節(jié)點,展開所選擇的具體數據庫節(jié)點,展開“表”節(jié)點,右鍵要插入紀錄的表,選擇“打開表”命令,選擇“返回所有行”,即可輸入紀錄值(5)修改記錄:如同插入記錄的方法,利用“打開表”命令,選擇“返回所有行”打開數據表,在對應位置直接進行修改(6)刪除記錄:如同插入記錄的方法,利用“打開表”命令,選擇“返回所有行”打開數據表,右擊要刪除的行,選擇“刪除”命令即可。(1)創(chuàng)建數據表格式:CREATETABLE表名(列名1數據類型約束,列名2數據類型約束,
…
列名n數據類型約束)2、使用T-SQL語言約束:實現表的完整性DEFAULT常量表達式:默認值約束。NULL/NOTNULL:空值(默認)/非空值約束。PRIMARYKEY:主鍵約束。例1:在數據庫Manager中建立一個表student。要求:Student_id列為非空列且為主鍵;sex列中1表示男性,0表示女性,默認值為1;其他列可以為空textCreatetablestudent(student_idchar(6)notnullPRIMARYKEY,namevarchar(20),sexbitdefault1,birthdaysmalldatetime,entrancescoresmallint,department_idchar(4),photoimage,notetext)例2:在數據庫Manager中建立一個表scoreCreatetablescore(student_idchar(6),subject_idchar(4),scoresmallint,examination_datesmalldatetime)(2)修改數據表格式:ALTERtable表名[ALTERCOLUMN列名列定義]|[ADD列名
類型約束]|[DROPCOLUMN列名1,列名2,…]注意:ALTERTABLE只允許添加可包含空值或指定了DEFAULT定義的列除DROP外,ALTERTABLE命令一次只允許更改表的一個屬性或修改一列
例3:修改數據庫manager中的表score,添加列名為pre_subject(表示先修課程)的一列,要求數據類型為varchar(20);再添加列名為suc_subject(表示后繼課程)的一列,要求數據類型為varchar(20),可空AltertablescoreAddpre_subjectvarchar(20)AltertablescoreAddsuc_subjectvarchar(20)例4:刪除剛才對表score添加的列AltertablescoreDropcolumnpre_subject,sub_subject(3)刪除數據表
DROPTABLE
表名
例5:刪除數據表droptablescore(4)插入記錄INSERT
[INTO]
表名[(列名1,列名2,…)]
VALUES(值1,值2,…)注:通常INSERT命令一次只能插入一行數據插入一行所有列的值時,列名可省略不寫例6:在表student中插入下列數據,其中photo數據暫時不輸入insertstudent(student_id,name,sex,birthday,entrancescore,department_id,note)values(‘031001’,’張平’,1,’85/12/1’,600,’jx10’,’機械’)insertstudent(student_id,name,sex,birthday,entrancescore,department_id,note)values(‘031002’,’王麗’,0,’86/2/24’,590,’jx10’,’機械’)(5)修改記錄格式UPDATE
表名SET列名1=表達式,…列名n=表達式[where邏輯表達式]例6:修改student表中的entrancescore列,使所有小于600的值改為nullupdate
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 分項工程勞務分包合同
- 基坑噴錨支護勞務分包合同
- 建實務招標與合同管理知識點
- 私人教練健身指導服務合同與免責條款
- 產品銷售服務合同
- 個人林地承包合同
- 北京平安普惠合同
- 石子黃沙購銷合同
- 《第14課 循環(huán)結構(二)》教學設計教學反思-2023-2024學年小學信息技術浙教版23五年級下冊
- 郴州職業(yè)技術學院《材料與施工》2023-2024學年第二學期期末試卷
- 2024年青島職業(yè)技術學院高職單招語文歷年參考題庫含答案解析
- 《職業(yè)道德與法治》開學第一課(導言)(課件)-【中職專用】中職思想政治《職業(yè)道德與法治》高效課堂課件+教案(高教版2023·基礎模塊)
- (正式版)JBT 10437-2024 電線電纜用可交聯聚乙烯絕緣料
- 騙提個人住房公積金檢討書
- 監(jiān)控系統維保方案計劃及報價
- ABCD2評分量表(TIA早期卒中風險預測工具)
- E-learning平臺使用手冊(培訓管理員版)
- 自動化物料編碼規(guī)則
- 小學音樂教材分析
- 委托收款三方協議
- 黃岡市2021-2022高一上學期期末考試數學試題及答案
評論
0/150
提交評論