ORACLE 12C 生产脚本规范

数据库规范

oracle数据库安装若是 ZHS16GBK,脚本文件编码格式请用相同的ansi格式

1.创建表空间和用户

-------创建kdbase----------
sqlplus / as sysdba;
alter session set container=PDBORCL;  
drop user ktest cascade;
drop tablespace TS_KTEST including contents and datafiles cascade constraints;

--2.创建表空间
create tablespace TS_KTEST datafile 'C:\app\oracle\oradata\orcl\ktest.dbf' size 32M autoextend on next 100M maxsize 15000M extent management local;
--3.重启OracleServiceOrcl服务
exit
lsnrctl stop
sqlplus / as sysdba
alter session set container=PDBORCL; 
shu immediate
startup
exit
lsnrctl start

sqlplus / as sysdba
alter session set container=PDBORCL; 
--4.创建数据库用户
create user ktest identified by ktest default tablespace TS_KTEST;
GRANT 
  CREATE SESSION, CREATE ANY TABLE, CREATE ANY VIEW ,CREATE ANY INDEX, CREATE ANY PROCEDURE,
  ALTER ANY TABLE, ALTER ANY PROCEDURE,
  DROP ANY TABLE, DROP ANY VIEW, DROP ANY INDEX, DROP ANY PROCEDURE,
  SELECT ANY TABLE, INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLE
  TO ktest;
GRANT connect,resource TO ktest;
alter user ktest quota unlimited on TS_KTEST;
--解决PLSQL无法连接的问题
grant dba to ktest;  

2.创建对象

2.1创建表

--存在就删除函数(函数中使用execute immediate不能执行DDL语句删除表结构。)
declare tb_num number :=0;
BEGIN
  select count(1) into tb_num from user_tables where table_name = upper('TABLE_NAME') ;
    if tb_num > 0 then
        execute immediate 'drop table TABLE_NAME cascade constraints';
    end if;
END;
--创建表
create table TABLE_NAME 
(
   RECORD_SNO           INTEGER     default SEQ_TABLE_NAME.NEXTVAL ,
   CUST_CODE            VARCHAR2(32),
   YY_CODE             VARCHAR2(32),
   UP_DATE              VARCHAR2(10),
   CREATE_DATE          VARCHAR2(10),
   CREATE_TIME          VARCHAR2(10),
   CREATE_STA           VARCHAR2(1),
   REMARK               VARCHAR2(256),
   constraint PK_TABLE_NAME primary key (RECORD_SNO)
);

comment on table TABLE_NAME is
'一码通任务流水表';

comment on column TABLE_NAME.RECORD_SNO is
'记录号';

comment on column TABLE_NAME.CUST_CODE is
'客户代码';

comment on column TABLE_NAME.YY_CODE is
'测试代码';

comment on column TABLE_NAME.UP_DATE is
'更新日期';

comment on column TABLE_NAME.CREATE_DATE is
'生成日期';

comment on column TABLE_NAME.CREATE_TIME is
'生成时间';

comment on column TABLE_NAME.CREATE_STA is
'生成状态';

comment on column TABLE_NAME.REMARK is
'备注';

--生成删除表的语句(注意结果在notepad++中将换行换成\r\n , ~换成')
select 'declare tb_num'||rownum||' number :=0;换行BEGIN换行  select count(1) into tb_num'||rownum||' from user_tables where table_name = upper(~' ||
       table_name ||
       '~) ;换行    if tb_num'||rownum||' > 0 then换行        execute immediate ~drop table ' ||
       table_name || ' cascade constraints~;换行    end if;换行END;换行/换行' as del_tb_sql
  from user_tables;

2.2创建序列器

--BEGIN END之间用execute immediate 执行DDL语句。
declare sq_num number :=0;
BEGIN
    select count(1) into sq_num from user_sequences where sequence_name = upper('SEQ_NAME') ;
    if sq_num > 0 then
        execute immediate 'drop sequence SEQ_NAME';
    end if;
END;
/
create sequence SEQ_NAME
minvalue 1
maxvalue 9999999999999999999999999999
start with 100000
increment by 1
cache 20;

--生成删除序列器的语句(注意结果在notepad++中将换行换成\r\n , ~换成')
  select 'declare sq_num'||rownum||' number :=0;换行BEGIN 换行 select count(1) into sq_num'||rownum||' from user_sequences where sequence_name = upper(~' ||
       sequence_name ||
       '~) ;换行 if sq_num'||rownum||' > 0 then 换行    execute immediate  ~drop sequence ' ||
       sequence_name || '~; 换行 end if;换行END;换行/换行' as del_sq_sql
  from user_sequences;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的 Oracle 12c 一键安装脚本示例,你可以根据自己的需要进行修改: ```bash #!/bin/bash # 设置Oracle安装文件的路径 ORACLE_INSTALL_FILE=/path/to/oracle/install/file # 设置Oracle安装时需要的环境变量 export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1 export ORACLE_SID=orcl export PATH=$PATH:$ORACLE_HOME/bin # 开始Oracle的安装 $ORACLE_INSTALL_FILE -silent -responseFile /path/to/response/file.rsp -ignorePrereq # 设置Oracle的启动脚本 ln -s $ORACLE_HOME/bin/dbstart /etc/init.d/dbora # 启动Oracle /etc/init.d/dbora start # 设置Oracle开机自启动 chkconfig dbora on ``` 在脚本中,需要设置以下变量: - `ORACLE_INSTALL_FILE`: Oracle安装文件的路径。 - `ORACLE_HOME`: Oracle的安装目录。 - `ORACLE_SID`: Oracle实例的SID。 - `PATH`: 系统环境变量中需要添加Oracle的bin目录。 脚本中使用`-silent`参数运行Oracle安装程序,使用`-responseFile`参数指定安装响应文件的路径。这样,Oracle就会在自动安装时使用响应文件中指定的参数进行安装。 接下来,脚本创建了一个符号链接`/etc/init.d/dbora`,指向Oracle的启动脚本。然后,使用`/etc/init.d/dbora start`命令启动Oracle,并使用`chkconfig`命令将Oracle设置为开机自启动。 注意:这只是一个简单的示例脚本,实际场景中可能需要更多的参数和设置。在使用脚本之前,请务必仔细检查并根据自己的需要进行修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值