SQL练习2 修改和删除基本表 数据库系统概论第五版 王珊

数据库和表的内容的建立,参照https://blog.csdn.net/qq_41398619/article/details/105403920

例3.8: 向Student表增加"入学时间"列,其数据类型为日期型.
拓展: 查看表的属性
插入一条新的记录
清空新插入的列(UPDATE table_name SET field_name = null;)
删除新插入的记录
最后删除列的格式(ALTER TABLE table_name DROP COLUMN field_name;)
数据恢复原样

alter table Student add S_entrance date;
/*不论表中是否有数据,新增加的列一律为空值.*/
desc Student;/*查看表的属性*/
/*向学生表中插入一条新数据*/
insert into Student values('201215126','马云','男',20,'CS','2020-01-01');
/*清空新插入的该列*/
UPDATE Student SET S_entrance = null;
/*删除新插入的数据*/
delete from Student where Sname='马云';
/*删除列的格式*/
alter table Student drop column S_entrance;
/*查看表*/
select *from Student;

例3.9: 将年龄的数据类型由字符型(假设原来的数据类型是字符型)改为整数

-- alter table 表名 modify column 字段名 XXX 
alter table Student modify column Sage INT;
-- 改回原来的smallint
alter table Student modify column Sage smallint;

删除基本表

drop table <表名> [restrict|cascade]

/*
cascade表示删除表的同时,相关的依赖对象会被一同删除
restrict表示删除表的同时受限制,如果有约束则不能删除成功
*/
drop table Student cascade;

建立 修改 删除索引

create unique index Stusno on Student(Sno);
CREATE UNIQUE INDEX Coucno ON Course(Cno);
CREATE UNIQUE INDEX SCno ON SC(Sno ASC,Cno DESC);
-- 修改索引
ALTER INDEX SCno RENAME To SCsno;
-- 删除索引
DROP INDEX SCno;
原创文章 36 获赞 8 访问量 2778

猜你喜欢

转载自blog.csdn.net/qq_41398619/article/details/105406072
今日推荐