目的:實現對數據庫XDSA中表S72、C72、SC72的數據插入
1.構建數據庫
2.構建表
3.插入數據
插入數據語句:
①
命令:
INSERT INTO TableName
VALUES('值','值','值','值','值')
示例:
INSERT INTO S72
VALUES('200512','李勇','計算機系','20','男')
②
命令:insert into 表名 (列名 ,列名)
values (值,值)
示例:insert into 表名(Sname,Sid,Sage)
values(‘張三’,12,15)
③
(批量插入)
命令:BULK INSERT 表名 FROM '文件路徑地址' WITH (FIRSTROW=2)
示例:BULK INSERT SC72 FROM 'F:\DB201721123072\dataSC72.txt' WITH (FIRSTROW=2)
4.驗證插入是否成功
命令:
SELECT * FROM 表名
示例:
SELECT * FROM SC72
5.源代碼
create database XSDA on primary (name = XSDA, filename = 'D:\大學生活文檔\大學課程\數據庫課程\實驗三插入數據\XSDA.mdf') log on (name = XSDA_Log, filename = 'D:\大學生活文檔\大學課程\數據庫課程\實驗三插入數據\XSDA_Log.ldf') use XSDA go create table S72 (SNO CHAR(10) NOT NULL PRIMARY KEY, SNAME VARCHAR(20) NOT NULL, DEPA VARCHAR(20) CHECK(DEPA IN('計算機系','數學系','物理系','信息系')), AGE INT CHECK(AGE>0), SEX NCHAR(1) ) CREATE TABLE C72 (CNO CHAR(3) NOT NULL PRIMARY KEY, CNAME VARCHAR(20) NOT NULL, cpno char(3) REFERENCES C72(CNO), credit int DEFAULT 2 ) CREATE TABLE SC72 (SNO CHAR(10) NOT NULL REFERENCES S72(SNO), CNO CHAR(3) NOT NULL REFERENCES C72(CNO) , GRADE DECIMAL(4,1), PRIMARY KEY(SNO,CNO) ) INSERT INTO S72 VALUES('200512','李勇','計算機系','20','男') INSERT INTO C72 VALUES('c03','數據結構',null,'6') INSERT INTO C72 VALUES('c01','數據庫原理','c03','4') INSERT INTO C72 VALUES('c02','信息系統','c01','4') INSERT INTO C72 VALUES('c04','DB_設計','c01','3') BULK INSERT S72 FROM 'F:\DB201721123072\S72.txt' WITH (FIRSTROW=2) BULK INSERT SC72 FROM 'F:\DB201721123072\SC72 .txt' WITH (FIRSTROW=2)
6.小結
①這里不能用unique修飾,不然后面會和C72(CNO)關聯的表產生沖突。
②沒有設置關聯主鍵的話,其實SC72這個表就沒什么實際意義了,不能保證參數的完整性和准確性。
③對數據庫的語句使用有了更進一步的認識,明白了在輸錯數據之后,怎么用delect清空表里面的內容。