Oracle:对表的CREATE、ALTER、INSERT、RENAME、DELETE操作练习以及主外键约束

时间:2022-05-21 18:27:15

-创建一个student表,设定表的主键为学号
CREATE TABLE student(
sno VARCHAR2(10) PRIMARY KEY, --列级约束
sno VARCHAR2(20) CONSTRAINT sno_pk PRIMARY KEY, --有约束名的列级约束
sname VARCHAR2(10) DEFAULT '张三',
ssex VARCHAR2(1),
sbirthday DATE,
saddress VARCHAR2(50),
--创建表级约束
CONSTRAINT sno_pk PRIMARY KEY(sno)
)

--查询表student
SELECT * FROM student
--修改sno的长度
ALTER TABLE student MODIFY sno VARCHAR2(20)
--修改ssex的长度
ALTER TABLE student MODIFY ssex VARCHAR2(2)
--什么是默认值,如果在插入数据时,没有赋值,那么就取默认值。
INSERT INTO student(sno,ssex) VALUES('09','男')
INSERT INTO student(sno,ssex) VALUES('57507109','男')
--修改sname的默认值为李四
ALTER TABLE student MODIFY sname DEFAULT '李四'
INSERT INTO student(sno,ssex) VALUES('57507112','女')
--表重命名
RENAME student TO stu
--删除列
ALTER TABLE stu DROP COLUMN saddress;
--删除sno='57507111'的信息
DELETE FROM stu WHERE sno='57507111';
--通过修改表结构,来创建约束
ALTER TABLE stu ADD CONSTRAINT sno_pk PRIMARY KEY(sno);
--删除约束
ALTER TABLE stu DROP CONSTRAINT sno_pk;

--插入信息
INSERT INTO stu(sno,sbirthday) VALUES('57507105',TO_DATE('2017-04-02','YYYY-MM-DD'))
--修改stu的DATE默认值
ALTER TABLE stu MODIFY sbirthday DEFAULT SYSDATE

--删除列sno
ALTER TABLE stu DROP COLUMN sno
--添加列
ALTER TABLE stu ADD sno VARCHAR2(20)