有时候我们做项目的时候不止只接触某一个单一数据库,MySQL
数据库或者Oracle
数据库,一般多多少少参与的过程中都要学习,接下来我将记录几个我们在Oracle
数据库中常用的几个操作命令,以便将来遇见了,有地方可以找到。
新增表的列字段
alter table 表名 add(
字段1 数据类型,
字段2 数据类型
);
--例子 在已存在的User表中添加一个地址字段`address`,数据类型为varchar2,长度为30
alter table user add(
address varchar2(30)
);
修改表的列字段
alter table 表名 modify(字段1 数据类型,.....)
--例子,修改已存在的User表中的地址字段`address`,数据类型为varchar2,长度为50
alter table user modify(address varchar2(50));
移除表的列字段
alter table 表名 drop column 字段
--例子,删除已存在的表User表中的地址字段`address`
alter table user drop column address
设置字段的注释
COMMENT ON COLUMN "表空间"."表名"."字段名" IS '注释内容';
--例子,设置已存在的User表中的地址字段`address`注释内容为'地址'
COMMENT ON COLUMN "scott"."user"."address" IS '地址';
分页模板
SELECT *
FROM (SELECT a.*, ROWNUM rn
FROM (
业务sql
) a
WHERE ROWNUM <= 最终偏移量)
WHERE rn >= 起始偏移量
--例子,查询User表的数据,展示第一页,每页20条数据
SELECT *
FROM (SELECT a.*, ROWNUM rn
FROM (
select * from user
) a
WHERE ROWNUM <= 20)
WHERE rn >= 1
创建表的序列
CREATE SEQUENCE "表空间"."序列名" MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 1 NOCACHE NOORDER NOCYCLE
--例子,创建user表的序列,用于递增id
CREATE SEQUENCE "scott"."user_S" MINVALUE 1 MAXVALUE 999999999999999999999999999 INCREMENT BY 1 START WITH 1 NOCACHE NOORDER NOCYCLE