oracle应该是没有操作数据库的SQL
oracl创建数据库通过数据库提供的工具来新建数据库 windows版oracle新建数据库
create database 数据库名称; --创建数据库 create database if not exists 数据库名称; --判断不存在,再创建 create database 数据库名称 character set 字符集名; --创建数据库,并指定字符集
show databases; --查询所有数据库的名称: show databases like 'te%'; show create database test; --查询某个数据库的创建语句
alter database 数据库名称 character set 字符集名称; --修改数据库的字符集
drop database 数据库名称; --删除数据库,同时删除该数据库相关的目录及其目录内容 drop database if exists 数据库名称; --判断数据库存在,存在再删除
use 数据库名称; --使用数据库 select database(); -- 查询当前正在使用的数据库名称
--创建表 create table student( id int, name varchar(32), age int, score double(4,1), birthday date, insert_time timestamp ); 注意:最后一列,不需要加逗号(,)
desc 表名; --查看表结构 字段名称以及约束
mysql
show tables; --查询选中数据库中所有的表名 show tables like "stu%"; -- 模糊搜索 表名 SHOW CREATE TABLE student; --查看表的创建语句
oracle
select * form tab; -- 查看当前用户下所有表名
alter table 表名 rename to 新的表名; --修改表名 rename 表名 to 新表名; -- 仅oracle支持 alter table 表名 add 列名 数据类型; --添加字段 alter table 表名 rename column 列名 to 新列名; -- 修改字段名 alter table 表名 modify 列名 类型(大小) -- 修改字段的数据类型或长度 alter table 表名 change 列名 新列名 新数据类型; --同时修改列名和数据类型 --oracle不支持 alter table 表名 drop column 列名; -- 删除字段 alter table 表名 drop 列名; -- 省略column关键字,oracle不支持 -- 仅mysql支持 alter table 表名 character set 字符集名称; --修改表的字符集 ALTER TABLE 表名 ENGINE=MYISAM;
mysql :
select * from emp1; desc emp1; alter table emp1 add age int; alter table emp1 modify age decimal(3,0); alter table emp1 CHANGE age age1 int; alter table emp1 drop column age1; alter table emp1 drop age;
oracle :
select * from emp; desc emp; alter table emp add age number; alter table emp modify age number(3,0); alter table emp CHANGE age age1 number;--oracle不支持 alter table emp drop column age; alter table emp drop age; --oracle不支持
drop table 表名; --删除表结构和数据, drop table if exists 表名; show recyclebin; -- 查看回收站 仅oracle支持 purge recyclebin; -- 清空回收站 仅oracle支持