(a)创建表:
oracle:
create table t_student(
sid int primary key ,
sname varchar(1) not null ,
enterdate date,
gender char(1),
mail unique, ---唯一约束
age number check (age>19 and age<30) -----检查约束
)
mysql:
create table t_student(
sid int primary key auto_increment,
sname varchar(1) not null ,
enterdate date,
gender char(1),
age int check (age>18 and age<40), ---检查约束,虽然语法可以通过,但是不好使
mail varchar(10) UNIQUE --- 唯一约束
)
(b)插入数据:
oracle:
insert into myuser values (序列名字.nextval,'nana','123','男',to_date('1990-3-4','YYYY-MM-DD'))
mysql:
(0)正确写法:null 自增
(1)日期不同 可以直接添加:'1990-3-4'
(2)单位(1)代表一个字符,字母汉字都是一个字符! 性别 char(2) 代表 两个字符 :a一个字符 男 一个字符
(3)日期没有sysdate , 要是:sysdate() now() 错误 没有to_date函数 insert into myuser values (NULL,'nana','123','男',to_date('1990-3-4','YYYY-MM-DD'))
(4)可以多条数据一起添加
(5)非空约束,唯一约束,主键约束,都可以,但是 检查约束不好使
下面语法都是可以的:
insert into t_student values (NULL,'a','1990-3-4','a')
insert into myuser values (NULL,'nana','123','男','1990-3-4')
insert into myuser values (NULL,'nana','123','男','1990/3/4')
insert into myuser values (NULL,'nana','123','男',sysdate())
insert into myuser values (NULL,'nana','123','男',now())
insert into myuser values (NULL,'nana','123','男',sysdate()),(NULL,'nana','123','男',sysdate())
(c)删除表
(1)删除表:这里不同
oracle: delate from myuser ; ---from 可有可无
mysql: delete from myuser; ---必须有from
(2)删除整个表:oracle,mysql一样
drop table myuser ;
(3)只删除数据 不删除表 :oracle,mysql一样
TRUNCATE table myuser ;
在第一节基础上 更新了函数和执行顺序:实操了字符数函数、时间函数、字段截取函数、interval函数等,除最后顺序实操因未导入数据库,导致无法执行