sql添加,修改数据及删除表,表约束、字段及数据
生活随笔
收集整理的這篇文章主要介紹了
sql添加,修改数据及删除表,表约束、字段及数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
--建立學生數據庫
create database 學生數據庫;--建立學生表
create table 學生表
(
SNO CHAR(4),
SN CHAR(8)NOT NULL,
SEX CHAR(2) NOT NULL,
AGE INT NULL,
DEPT INT NOT NULL,
PRIMARY KEY(SNO),
CHECK (AGE BETWEEN 15 AND 45),
CHECK (SEX ='男' or sex ='女'),
CHECK (DEPT >=1 AND DEPT <=6)
)
GO--建立課程表
CREATE TABLE 課程表
(
CNO CHAR(4),
CN CHAR(19) NOT NULL,
PRIMARY KEY(CNO)
)
GO--建立學生選課表
CREATE TABLE 學生選課表
(
SNO CHAR(4),
CNO CHAr(4) not null,
GRADE INT NULL,
PRIMARY KEY(SNO,CNO),
foreign key (SNO) REFERENCES 學生表(SNO),
FOREIGN KEY (CNO) REFERENCES 課程表(CNO)
)
GO----alter table 表名 add check 增加約束
ALTER TABLE 學生選課表
ADD CHECK (grade between 0 and 100);
go--添加數據修改數據
--insert into …… values(……)
insert into 學生表 values( 'S1','徐琳', '女', 17,2);
insert into 學生表 values( 'S2','李國華','男', 18,6);
insert into 學生表 values( 'S3','徐萍', '女', 20, 1);
insert into 學生表 values( 'S4','林新明', '男', 23, 6);
insert into 學生表 values( 'S5','張家杰', '男', 19, 6) ;
insert into 學生表 values( 'S6','張婷', '女', 21, 3);
insert into 學生表 values( 'S7','趙大地', '男', 18, 6) ;
insert into 學生表 values( 'S8','趙樹林', '男', 19, 3);insert into 課程表 values( 'C1','數學') ;
insert into 課程表 values( 'C2','英語');
insert into 課程表 values( 'C3','C語言')
insert into 課程表 values( 'C4','數據庫原理');
insert into 課程表 values( 'C5','政治');
insert into 課程表 values( 'C6','物理');
insert into 課程表 values( 'C7','心理學');insert into 學生選課表 values( 'S1','C1',80);
insert into 學生選課表 values( 'S1','C2',85);
insert into 學生選課表 values( 'S1','C6',75);
insert into 學生選課表 values( 'S1','C4',56);
insert into 學生選課表 values( 'S1','C5',90);
insert into 學生選課表 values( 'S2','C1',47);
insert into 學生選課表 values( 'S2','C3',80);
insert into 學生選課表 values( 'S2','C4',75);
insert into 學生選課表 values( 'S2','C5',70);
insert into 學生選課表 values( 'S6','C1',95);
insert into 學生選課表 values( 'S6','C2',80);
insert into 學生選課表 values( 'S6','C3',87);
insert into 學生選課表 values( 'S3','C1',75);
insert into 學生選課表 values( 'S3','C2',70);
insert into 學生選課表 values( 'S3','C3',85);
insert into 學生選課表 values( 'S3','C4',86);
insert into 學生選課表 values( 'S3','C5',90);
insert into 學生選課表 values( 'S3','C6',99);
insert into 學生選課表 values( 'S4','C1',83);
insert into 學生選課表 values( 'S4','C2',85);
insert into 學生選課表 values( 'S4','C3',83);
insert into 學生選課表 values( 'S5','C2',99);---------------------------------------------------------------向表添加一行中的部分數據,向表添加一行的部分數據,只有當表中的列允許為空時才行
insert into 學生表(SNO,SN,SEX,DEPT) VALUES ('S9','王奇才','男',2);--ALTER TABLE …… ADD ……語句向表增加一列數據
ALTER TABLE 學生表 ADD CLASSNUM INT
GOSELECT * FROM 學生表;ALTER TABLE 課程表 ADD TEACHERNAME CHAR(8);
select * from 課程表;--增加約束
ALTER TABLE …… ADD CHECK …… 增加的約束,由系統給定約束名
ALTER TABLE …… ADD CONSTRAINT CHECK ……增加的約束,由用戶給定約束名ALTER TABLE 學生選課表
ADD CONSTRAINT 分數約束名 CHECK (GRADE BETWEEN 0 AND 100)
GO--UPDATE ... SET ...WHERE ...修改某一行中的某一列數據
UPDATE 學生表 SET DEPT =6 WHERE SNO='S1';--給分數低于60分的學生加5分
UPDATE 學生選課表 SET GRADE =GRADE +5 WHERE GRADE <60;ALTER TABLE 學生選課表 DROP FK__學生選課表__SNO__0CBAE877;
GOALTER TABLE 學生選課表 DROP FK__學生選課表__CNO__0DAF0CB0;
GO-----先建立主鍵,然后外鍵,主鍵是各個表的,外鍵要從主表從子表
-----刪除的時候要從主表的外鍵開始刪除,即除去外鍵約束,然后刪除子表的主鍵ALTER TABLE 學生表
DROP CK__學生表__AGE__7D78A4E7;GOALTER TABLE 學生表
drop CK__學生表__SEX__7E6CC920;
go---ALTER TABLE ... DROP COLUMN ...語句刪除表中的字段
ALTER TABLE 學生表 DROP COLUMN CLASSNUM;--DELETE FROM ...WHERE ...語句從表中刪除一行數據
delete from 學生表 WHERE SNO='S1';
GOSELECT * FROM 學生表;--DELETE FROM ... WHERE ... IN 從表中刪除多行數據
DELETE FROM 課程表 WHERE CNO IN('C1','C3','C6');
GOSELECT * FROM 課程表;DELETE FROM 課程表 WHERE CNO IN('C1','C3','C6');--DELETE FROM ...語句刪除表中第一行數據
DELETE FROM 學生表;--DROP TABLE ...命令刪除表
DROP TABLE 學生選課表;
DROP TABLE 學生表;
DROP TABLE 課程表;
總結
以上是生活随笔為你收集整理的sql添加,修改数据及删除表,表约束、字段及数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决FusionCharts联动的中文乱
- 下一篇: FFMPEG源码分析(二)