dataBase
table
tablespace
column
row
冗余:存储两倍数据,冗余降低了性能,但提高了数据的安全性。
主键:主键是唯一的。
外键:外键用于关联两个表。
复合键:一般用于复合索引。
索引:使用索引可快速访问数据库表中的特定信息。
函数:通过函数,可以在数据库服务器端执行指令程序。
索引:用户可以自定义索引方法,或使用内置的 B 树,哈希表与 GiST 索引。
create index PI_YGXX_JGDM on T_PUB_YGXX (N_JGDM, N_SCBZ) tablespace PHJRSTBT_DEFAULT
触发器:触发器是由SQL语句查询所触发的事件。
规则:规则(RULE)允许一个查询能被重写。
数据类型:包括文本、任意精度的数值数组、JSON 数据、枚举类型、XML 数据等。
NoSQL:JSON,JSONB,XML,HStore 原生支持,至 NoSQL 数据库的外部数据包装器。
--定义或者改变一个对象的注释。
comment on table T_BASE_SHSX is '基础表_商户属性,业务种类';
--定义视图
CREATE [ OR REPLACE ] VIEW name [ ( column_name [, ...] ) ] AS query
--定义触发器
CREATE TRIGGER name { BEFORE | AFTER } { event [ OR ... ] }
ON table [ FOR [ EACH ] { ROW | STATEMENT } ]
EXECUTE PROCEDURE func_name ( arguments )
--资料导入N_YWID 自动生成触发器
CREATE OR REPLACE TRIGGER TR_BI_T_FKHG_JSJY
BEFORE INSERT
ON PSBCYGZJ.T_FKHG_JSJY
REFERENCING NEW AS New OLD AS Old
FOR EACH ROW
DECLARE
tmpVar NUMBER;
BEGIN
tmpVar := 0;
select SEQ_TKXH.NEXTVAL INTO :NEW.N_YWID FROM DUAL;
EXCEPTION
WHEN OTHERS THEN
-- Consider logging the error and then re-raise
RAISE;
END ;
--从查询结果定义新表
CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name
[ (column_name [, ...] ) ] [ [ WITH | WITHOUT ] OIDS ]
AS query
--用于定义序列
CREATE [ TEMPORARY | TEMP ] SEQUENCE name
[ INCREMENT [ BY ] increment ]
[ MINVALUE minvalue | NO MINVALUE ]
[ MAXVALUE maxvalue | NO MAXVALUE ]
[ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]
-- Create sequence
create sequence SEQ_LOGID
minvalue 0
maxvalue 9999999999
start with 619265
increment by 1
nocache
cycle;
--用于定义index
CREATE [ UNIQUE ] INDEX name ON table [ USING method ]
( { column | ( expression ) } [ opclass ] [, ...] )
[ TABLESPACE tablespace ]
[ WHERE predicate ]
--用于定义函数
CREATE [ OR REPLACE ] FUNCTION name ( [ [ arg_name ] arg_type [, ...] ] )
RETURNS ret_type{}
[WITH()]
--Get_H5MKMC
CREATE OR REPLACE FUNCTION Get_H5MKMC (In_MKDM IN VARCHAR2)
RETURN VARCHAR2
IS
v_Ret T_PUB_MKXX_H5.c_mkmc%TYPE;
BEGIN
SELECT c_mkmc
INTO v_Ret
FROM T_PUB_MKXX_H5
WHERE N_MKDM = In_MKDM;
RETURN v_Ret;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
return '';
WHEN OTHERS
THEN
-- Consider logging the error and then re-raise
RAISE;
END Get_H5MKMC;
--用于定义数据库
CREATE DATABASE
--用于提交事务
COMMIT [ WORK | TRANSACTION ]
--用于开始一个事务块
BEGIN [ WORK | TRANSACTION ] [ transaction_mode [, ...] ]
--用于退出当前事务
ABORT [ WORK | TRANSACTION ]
--用于修改一个数据库
ALTER DATABASE name RESET parameter
--用于修改用户密码
ALTER USER name RESET parameter
--用于修改用户组
ALTER GROUP groupname ADD USER username [, ... ]
--用于修改模式
ALTER SCHEMA name RENAME TO new_name
--用于修改触发器
ALTER TRIGGER name ON table RENAME TO new_name
--用于修改表结构
ALTER TABLE [ ONLY ] name [ * ]
--用于修改索引定义
ALTER INDEX name OWNER TO new_owner
--用于修改序列
ALTER SEQUENCE name [ INCREMENT [ BY ] increment ]
--用于修改函数定义
ALTER FUNCTION name ( [ type [, ...] ] ) RENAME TO new_name
--用于修改类型
ALTER TYPE name OWNER TO new_owner
--用于修改表空间
ALTER TABLESPACE name RENAME TO new_name
--用于修改表结构
ALTER TABLE [ ONLY ] name [ * ]
--用于修改过程语言
ALTER LANGUAGE name RENAME TO new_name
--用于修改域
ALTER DOMAIN name { SET | DROP } NOT NULL
--用于修改一个聚集函数的定义
ALTER AGGREGATE _name_ ( _argtype_ [ , ... ] ) RENAME TO _new_name_
--用于修改一个排序规则定义
ALTER COLLATION _name_ RENAME TO _new_name_
--用于一个编码转换的定义
ALTER CONVERSION name RENAME TO new_name
SELECT * FROM dual;
SELECT SEQ_LOGID.NEXTVAL FROM dual;