Oracle 创建表SQL实例

/*
--用户表
--select * from sysuser
--drop table sysuser
--drop sequence seq_sysuser
--insert into sysuser (strcode,strname,blnEnable) values ('admin','admin',1);
--insert into sysuser (sysuserid,strcode,strname,blnEnable) values (999,'zhangsan','zhangsan',1);
*/
-- Create table
create table sysuser
(
  sysuserid NUMBER not null,
  strcode       VARCHAR2(50) not null,
  strname       VARCHAR2(500) not null,
  blnEnable     NUMBER(1) not null,  
  datLastSave   DATE default sysdate not null
);
 
-- Add comments to the columns
comment on column sysuser.sysuserid  is '用户ID';
comment on column sysuser.strcode  is '用户编码';
comment on column sysuser.strname  is '用户名称';
comment on column sysuser.blnEnable  is '启用';
comment on column sysuser.datLastSave  is '最近保存时间';
 
-- Create/Recreate primary, unique and foreign key constraints
alter table sysuser  add constraint PK_sysuser primary key (sysuserid);

--alter table sysuser  add constraint FK_sysuser_RefTableID foreign key (RefTableID)
 -- references RefTable (RefTableID) on delete cascade; 
 
--create sequence
create sequence seq_sysuser
minvalue 1 maxvalue 999999999999999999999999999
start with 1 increment by 1 cache 20;

--create trigger
CREATE OR REPLACE TRIGGER tri_sysuser_bi
BEFORE INSERT ON sysuser FOR EACH ROW
BEGIN
  IF (:new.sysuserid is null) or (:new.sysuserid<0) THEN
     SELECT seq_sysuser.nextval INTO :new.sysuserid FROM DUAL;
  END IF;
END;








 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle数据库中,可以使用Shell脚本来封装SQL语句,以便批量执行SQL语句或自动化执行SQL语句的任务。以下是一个使用Shell脚本封装Oracle SQL的示例: ```bash #!/bin/bash # 定义变量 DB_HOST="localhost" DB_PORT="1521" DB_SID="orcl" DB_USER="scott" DB_PASS="tiger" # 执行SQL语句 sqlplus -S $DB_USER/$DB_PASS@$DB_HOST:$DB_PORT/$DB_SID << EOF -- 创建表 CREATE TABLE employees ( employee_id NUMBER(6) NOT NULL, first_name VARCHAR2(20) NOT NULL, last_name VARCHAR2(25) NOT NULL, email VARCHAR2(25), phone_number VARCHAR2(20), hire_date DATE NOT NULL, job_id VARCHAR2(10) NOT NULL, salary NUMBER(8,2), commission_pct NUMBER(2,2), manager_id NUMBER(6), department_id NUMBER(4) ); -- 插入数据 INSERT INTO employees VALUES (100, 'Steven', 'King', 'steven.king@example.com', '515.123.4567', TO_DATE('1987-06-17', 'YYYY-MM-DD'), 'AD_PRES', 24000, NULL, NULL, 90); INSERT INTO employees VALUES (101, 'Neena', 'Kochhar', 'neena.kochhar@example.com', '515.123.4568', TO_DATE('1989-09-21', 'YYYY-MM-DD'), 'AD_VP', 17000, NULL, 100, 90); INSERT INTO employees VALUES (102, 'Lex', 'De Haan', 'lex.dehaan@example.com', '515.123.4569', TO_DATE('1993-01-13', 'YYYY-MM-DD'), 'AD_VP', 17000, NULL, 100, 90); -- 查询数据 SELECT * FROM employees; -- 结束SQL语句 EOF ``` 在该脚本中,通过使用“<< EOF”和“EOF”来封装SQL语句。在“<< EOF”后面的所有内容都将被视为SQL语句,直到遇到“EOF”为止。在这个例子中,我们连接到名为“orcl”的Oracle数据库实例,并执行一个简单的SQL语句,以创建一个名为“employees”的表,并插入三行数据。然后,我们使用SELECT语句查询了表中的所有数据。您可以根据需要修改SQL语句以执行不同的任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值