Oracle&数据库
文章平均质量分 75
程序员长弓
不能爱哪行才干哪行,要干哪行爱哪行!
It is no use doing what you like ; you have got to like what you do!
展开
-
如何写出性能优良的SQL?
我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享! (1)选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上转载 2008-08-30 00:01:00 · 1181 阅读 · 0 评论 -
Oracle DB Link实现两台机器上不同Oracle数据库用户间访问
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广关键字:Oracle Oracle DB Link通过数据库连接实现两台机器上不同Oracle数据库用户间访问。两台机器分别是服务器:FHWL-SERVER(192.168.6.99)我的电脑:FHWL-ZYG(192.168.6.75)想实现的功能是:我电脑上Oracle用原创 2009-06-17 13:41:00 · 6518 阅读 · 0 评论 -
Oracle表和索引移动表空间
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广关键字:Oracle 表空间 移动表空间 -----------------------------对表进行表空间移动操作-----------------------------如果有一张表ACCOUNTS存放在表空间EXAMPLE下现在要把表ACCOUNTS移动到表空间DEM原创 2009-06-18 12:09:00 · 7310 阅读 · 0 评论 -
ORA-00932: 数据类型不一致: 应为 -, 但却获得 –
错误发生的原因是在执行存储过程操作中,读取游标少读取了某个或者某些列。 不过,这似乎是不可能发生的,因为编译阶段都会报错。 下面演示错误的发生以及解决方法。 1.创建测试表USERS。 CREATE TABLE "USERS2" ( "USERNAME" VARCHAR2(20 BYTE),原创 2009-09-10 22:07:00 · 82327 阅读 · 0 评论 -
Oracle设置表空间到只读模式
为了保证表空间数据完整性,比如:进行数据库备份与还原操作、历史数据的完整性保护等情况下,可以将表空间设置到只读模式。只读表空间中的表不能进行INSERT、UPDATE、DELETE等操作,但是可以删除数据库对象。 SQL> select tablespace_name,status from dba_tablespaces; TABLESPACE_NAME原创 2009-09-12 13:42:00 · 4709 阅读 · 0 评论 -
Oracle游标使用总结
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广 游标(CURSOR)也叫光标,在关系数据库中经常使用,在PL/SQL程序中可以用CURSOR与SELECT一起对表或者视图中的数据进行查询并逐行读取。 Oracle游标分为显示游标和隐式游标。 显示游标(Explicit Cursor)原创 2009-09-30 16:56:00 · 1684 阅读 · 2 评论 -
Oracle的撤销表空间
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广Oracle中与撤销表空间相关的参数有:UNDO_MANAGEMENT :撤销表空间管理参数UNDO_TABLESPACE :撤销表空间名称UNDO_RETENTION :保持撤销的时间长度,默认为900秒SQL> SHOW PARAMETER UNDO_MANAGEMEN原创 2009-10-14 15:16:00 · 2650 阅读 · 0 评论 -
查询Oralce控制文件
控制文件是在数据库建立时自动创建的,是个二进制文件,存放数据库结构信息,包括数据文件和日志文件的信息。当管理员更改数据文件、日志文件时控制文件会自动更新,并且在任何时候都不可以编辑控制文件。--1.查询控制文件状态和路径SQL> select * from v$controlfile;STATUS NAME原创 2009-11-08 16:47:00 · 2645 阅读 · 0 评论 -
Oracle应用MERGE语句
Merge 是Oracle9i版本之后增加的语句,使用该语句可实现对表的更新或插入。原创 2010-07-25 17:45:00 · 1056 阅读 · 0 评论 -
Oracle的临时表空间
临时表空间主要内存区不够而必须将排序 数据写到磁盘的那个磁盘空间。该空间由Oracle自动释放。 产生排序操作如下: ORDER BY 、GROUP BY 、SELECT DISTINCT 、UNION 、INTERSECT MINUS 、ANALYZE 、CREATE INDEX 以及连接两个没有索引的表原创 2010-07-25 17:33:00 · 1476 阅读 · 0 评论 -
RMAN研究之测试时间点恢复
测试准备:1.做个完全数据库备份2.删除表中部分记录恢复操作:1.rman下进入目标数据库C:/Documents and Settings/Administrator>rman target / 2.关闭目标数据库RMAN> shutdown immediate; 3.加载目标数据库RMAN> startup mount; 4.执行时间点恢复操原创 2009-08-16 15:31:00 · 963 阅读 · 0 评论 -
RMAN研究之测试恢复表空间数据库文件
测试准备:1.用RMAN做个全数据库备份2.将Oracle服务全部停止,将表空间demo唯一数据文件demo01.DBF移动到其他目录,模拟数据文件丢失。恢复操作:1.rman下进入目标数据库C:/Documents and Settings/Administrator>rman target / 2.执行恢复表空间demoRMAN> run{2> sql "原创 2009-08-16 15:29:00 · 1172 阅读 · 0 评论 -
OracleOraDb10g_home1TNSListener服务无法启动
该问题多是安装oracle的主机更改了计算机名而导致的。 问题描述: OracleOraDb10g_home1TNSListener服务无法启动,启动后自动停止或者在XP服务中启动后显示“已启动”但是刷新后又回到停止状态。 解决方法: 首先查看服务启动失败的原因: 打开文件ORACLE_HOME/NETWORK/l原创 2009-03-26 14:47:00 · 8422 阅读 · 4 评论 -
oracle忘记用户名密码怎样恢复
一、忘记除SYS、SYSTEM用户之外的用户的登录密码。 用SYS (或SYSTEM)用户登录。 CONN SYS/PASS_WORD AS SYSDBA; 使用如下语句修改用户的密码。 ALTER USER user_name IDENTIFIED BY newpass; 注意:密码不能全是数字。并且不能是数字开头。否则会出现:原创 2009-04-01 15:43:00 · 9775 阅读 · 1 评论 -
Oracle非归档模式转为归档模式
SQL> archive log list;数据库日志模式 非存档模式自动存档 禁用存档终点 USE_DB_RECOVERY_FILE_DEST最早的联机日志序列 1当前日志序列 3SQL> archive log list;数据库日志模式 非存档模原创 2009-07-16 16:42:00 · 1275 阅读 · 0 评论 -
重启Oracle服务
有时需要重启Oracle服务,在系统服务中点击“停止”后再点击“启动”实在是很麻烦,可以将要重启的Oracle服务放在一个批处理文件中批量执行。 创建停止Oracle服务的批处理文件:stopOracle.bat 内容如下:set echo off net stop OracleServiceCTCMC net stop Oracl原创 2009-08-07 19:06:00 · 6897 阅读 · 0 评论 -
【误删数据不要慌,Oracle闪回表来帮忙】之一
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广有没有因为误删除重要数据而手忙脚乱、不知所措的经历?Oracle9i Database 推出了闪回查询选项的概念,以便检索过去某个时间点的数据,但它不能闪回 DDL 操作,如删除表的操作。唯一的恢复方法是在另一个数据库中使用表空间的时间点恢复,然后使用导出/导入或其他方法。以上内容我只能说是原创 2009-06-10 21:43:00 · 2099 阅读 · 0 评论 -
【误删数据不要慌,Oracle闪回表来帮忙】之二
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广如果在删除表的过程中没有实际删除表 — 因而没有释放表空间 — 那么当被删除的对象占用了所有空间时,会发生什么事? 答案很简单:这种情况根本不会出现。当表空间被回收站数据完全占满,以至于必须扩展数据文件来容纳更多数据时,可以说表空间处于“空间压力”情况下。此时,对象以先进先出的方式从回收原创 2009-06-10 21:51:00 · 1776 阅读 · 0 评论 -
【误删数据不要慌,Oracle闪回表来帮忙】之四
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广在测试PURGE INDEX INDEX_NAME; 使用时时曾提到利用闪回表恢复表后,该表上的索引(也包括触发器)等相关对象并没有恢复原始名称,它们仍然使用回收站的名称。在表上定义的源(如视图和过程)没有重新编译,仍然保持无效状态。必须手动得到这些原有名称并应用到闪回表。 依原创 2009-06-10 21:58:00 · 1121 阅读 · 0 评论 -
【误删数据不要慌,Oracle闪回表来帮忙】之五
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广下面进行把数据恢复到某个点上的实验。要实现把数据闪回到过去的某个点上,必须确保与撤销的表空间有关的参数设置合理。已DBA身份登录数据库,查看撤销表空间有关参数:SQL> conn sys/admin_0522 as sysdba;已连接。SQL> show parameter原创 2009-06-10 21:59:00 · 1084 阅读 · 0 评论 -
【误删数据不要慌,Oracle闪回表来帮忙】之三
转载请注明:来自http://blog.csdn.net/M_ChangGong/ 作者:张燕广下面进行测试删除TEST的实验。DROP TABLE TEST PURGE;依次执行下面3组语句:第1组: CREATE TABLE TEST (ID NUMBER);INSERT INTO TEST VALUES (1);COMMIT;DROP T原创 2009-06-10 21:56:00 · 1058 阅读 · 0 评论 -
50个常用sql语句
整理开发资料翻出来滴,共享一下。Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 问题: 1、查询“001”课程比“002”课程成绩高的所有学生的学号; select a.S# from (select s#,转载 2012-07-06 20:50:26 · 1439 阅读 · 0 评论