有点乱,将就看吧
1、收回用户权限:Invoke dba from user
2、查看数据库的归档模式:select name,log_mode from v$database
3、逐步启动数据库:
1、sqlplus /nolog
2、conn sys/aaaaaa as sysdba
3、start nomount
4、start mount
startup可以直接启动数据库
4、为表空间添加数据文件
alter tablespace sysaux add datafile 'f:/oracle/datafile/sysaux02.dbf' size 2G reuse;
5、表空间空间不足时,会导致oracle自动关闭,偶尔会启动失败,增加表空间数据文件就OK
6、时间运算:
1/24代表一个小时,1/1440代表一分钟,1/86400代表一秒钟
SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
Session altered.
SQL> select sysdate, sysdate+1/24, sysdate +1/1440, sysdate + 1/86400 from dual;
SYSDATE SYSDATE+1/24 SYSDATE+1/1440 SYSDATE+1/86400
------------------- ------------------- ------------------- -------------------
2008-04-16 21:23:19 2008-04-16 22:23:19 2008-04-16 21:24:19 2008-04-16 21:23:20
SQL> select sysdate,sysdate + 60/(24*60*60) from dual;
SYSDATE SYSDATE+60/(24*60*6
------------------- -------------------
2008-04-16 21:24:40 2008-04-16 21:25:40
求日期:
select convert(char(10),getdate(),20) from dual
select trunc(sysdate) value from dual
select to_char(sysdate,'yyyy-mm-dd') value from dual
求时间:
select to_char(sysdate,'hh24:mm:ss') value from dual
当月最后一天:
select LAST_DAY(sysdate) value from dual
本星期的某一天(比如星期日):
SELECT Next_day(sysdate,7) vaule FROM DUAL;
得到本周的某一天,sysdate必须小于要查询的日期,比如今天是周二,Next_day(sysdate,2),得到的是下一个周二的日期,查询周三则得到正确值
7、初始化参数replication_dependency_tracking = FALSE,重建数据库。
修改表的一些常用语法
添加列:alter table hek_test_headers add col_test number;
修改列:alter table hek_test_lines modify litem varchar(40) not null;
删除列:alter table hek_test_lines drop columns col_test;
重命名列:alter table hek_test_lines rename column col_test to col_test2;
添加主键:alter table HEK_TEST_LINES add constraint pk_test primary key (LINEID);
添加外键:alter table hek_test_lines add constraint fk_test foreign key(hid) references hek_test_headers(hid)
失效主键:alter table hek_test_lines disable constraint pk_test;
失效外键:alter table hek_test_lines disable constraint fk_test;
删除主键:alter table hek_test_lines drop constraint pk_test cascade;
删除外键:alter table HEK_TEST_LINES drop constraint fk_test;
舍入函数
三个舍入函数:round()、floor()、ceil()
Round():实现四舍五入,允许设置保留的位数,这个也最常用的四舍五入函数。
Floor():实现取整。一般的程序语言是整数除以整数,返回的仍是整数。PL/SQL想得比较多。
Ceil():实现近似值。Ceil会直接近似取整,如果想保留小数,就要自己动手写个函数了。
select 9/4 from dual;
select CEIL(9/4) from dual;
select round(9/4,0) from dual;
实现类似BREAK语句
在没有LOOP…END LOOP时,是不能使用EXIT的。但可以通过GOTO语句实现。
Connect by
Oracle层次树是通过Connect by [条件] Start with [条件] 来实现。这一功能非常好用,比如ERP中的BOM、HR中的组织架构,就算是这类的典型应用了。不过,Oracle EBS11i中好象没实现,BOM也没有使用树这种组件。
从'999999877'开始,查询其父部门,直到顶层
select level,t.* from emp t connect by prior t.pid=t.id start with t.id='999999877'
从'999999877'开始,查询其子部门,直到底层
select level,t.* from jivegroup t connect by prior t.id=t.id start with
t.id='999999877'
ORACLE的PL SQL通过exec immediate执行DDL语句,如创建表,经常用类似这样的语句:exec immediate 'create table emp1 as select * from EMP',注意表名EMP必须大写,不然找不到表,但这样创建的表没有主键、索引等约束,也可以用exec immediate给新表加上索引
分享到:
相关推荐
Oracle常用sql语句整理 Oracle常用sql语句整理 Oracle常用sql语句整理 Oracle常用sql语句整理 Oracle常用sql语句整理 Oracle常用sql语句整理
ORACLE经典常用语句总结 ORACLE经典常用语句总结
Oracle常用脚本与语句Oracle常用脚本与语句Oracle常用脚本与语句Oracle常用脚本与语句Oracle常用脚本与语句Oracle常用脚本与语句Oracle常用脚本与语句Oracle常用脚本与语句Oracle常用脚本与语句Oracle常用脚本与语句...
oracle常用sql语句大全 注释完整 放心使用 包含所有常用语句
ORACLE常用SQL语句大全.pdf
Oracle常用SQL查询语句,Oracle常用SQL查询语句,Oracle常用SQL查询语句
Oracle学习,常用sql语句汇总,适合新手使用。
oracle常用sql语句 oracle常用sql语句 oracle常用sql语句 oracle常用sql语句 oracle常用sql语句
oracle常用SQL语句下载 oracle常用SQL语句下载 oracle常用SQL语句下载
oracle常用sql语句,数据库常用的sql语句!!!!
Oracle 常用查询语句 查看表空间使用、日志使用、数据字典、控制文件等信息查询、修改、维护;数据查询语句优化分析;数据导入导出等操作
ORACLE 常用SQL语句,ORACLE数据库初使用者可以看看。
oracle 常用语oracle 常用语oracle 常用语句
oracle常用经典语句,用到oracle常用的语句总结,以及oracle的备份与恢复技术。
自己整理的Oracle常用高级语句,内含多个文件,大放送
经典SQL语句收集,在oracle中进行列行转换 ,五种提高SQL性能的方法,常用SQL查询,SQL优化原则等共计112册适合初学者学习。
一些常用到的在oracle中的sql语句,也是我在网上找到的,分享给大家
oracle数据库常用操作语句,实现对用户的管理和权限管理。