2021-04-28

educoder

表的建立、修改和删除

创建表

-- ********** 此处写“1、创建Student表”的SQL语句 ********** --
create table Student 
(
    Sno char(10) primary key,
    Sname varchar(20),
    Ssex char(2),
    Sage smallint,
    Sdept varchar(20)
);
-- ********** 此处写“2、创建Course表”的SQL语句 ********** --
CREATE TABLE Course 
(
    Cno char(10) primary key,
    Cname varchar(20),
    Cpno char(10),
    Ccredit smallint
);
-- ********** 此处写“3、创建SC表”的SQL语句 ********** --
CREATE TABLE SC
(
    Sno char(10),
    Cno char(10),
    primary key(Sno,Cno),
    Grade smallint
);

修改表别构

-- ********** 此处写“1、添加phone列”的SQL语句 ********** --
ALTER TABLE Student ADD phone char(12);
-- ********** 此处写“2、删除Cpno列”的SQL语句 ********** --
ALTER TABLE Course drop  column Cpno;
-- ********** 此处写“3、修改sdept列”的SQL语句 ********** --
ALTER TABLE Student ALTER column sdept varchar(30);

 

删除表

-- ********** 此处写“1、删除三张表”的SQL语句 ********** --
Drop TABLE SC ;
DROP TABLE Course;
DROP TABLE Student;

 

对表插入,修改,删除数据

插入数据

INSERT INTO Student(Sno,Sname,Ssex,Sage,Sdept)
    values('001','Smith','m','18','CS');
INSERT INTO Student(Sno,Sname,Ssex,Sage,Sdept)
    values('002','Ketty','f','19','MA');
-- ********** 此处写“2、为Course表插入两行”的SQL语句 ********** --
INSERT INTO Course(cno,cname,ccredit)
    values('C01','DB','2')
INSERT INTO Course
    values('C02','Oracle','C01','3')
-- ********** 此处写“3、为SC表插入3行”的SQL语句 ********** --
INSERT INTO SC
    values('001','C01','70');
INSERT INTO SC
    values('001','C02','82');
INSERT INTO SC
    values('002','C01','86');

修改数据1

-- ********** 此处写“1、将不及格的学生成绩加5分”的SQL语句 ********** --
UPDATE SC
SET Grade=Grade+5
WHERE Grade<60;
-- ********** 此处写“2、将CS系男同学的年龄加1”的SQL语句 ********** --
UPDATE Student
SET Sage = Sage + 1
WHERE Ssex = 'm';
-- ********** 此处写“3、将学生的学号前加上‘S’(其中S要大写)”的SQL语句 ********** --
UPDATE Student
SET Sno = 'S' + Sno
Where Sno is not Null;
-- UPDATE Course
-- SET Sno = 'S' + Sno
-- Where Sno is not Null;
​
UPDATE SC
SET Sno = 'S' + Sno
Where Sno is not Null;

修改数据2

-- ********** 此处写“1、将学生的学号前的‘S’删掉”的SQL语句 ********** --
Update Student
    Set sno = substring(sno,2,3)
-- ********** 此处写“2、在学生学号的后面加上‘S’”的SQL语句 ********** --
Update Student
    Set sno = substring(sno,1,4)+'S'

删除数据

-- ********** 此处写“1、在SC表中删除成绩为空的选课信息”的SQL语句 ********** --
Delete From SC
Where Grade is null;
-- ********** 此处写“2、删除年龄等于18岁的女同学”的SQL语句 ********** --
Delete From Student
Where Sage = '18' and Ssex = 'f'
-- ********** 此处写“3、删除学分为3分的课程”的SQL语句 ********** --
Delete From Course
Where Ccredit = '3'

你可能感兴趣的:(sql)