SQL入门之2 函数1
字符串函数 数字函数[@more@]-- 常规的多表联接select title,firstname,lastnamefrom customers,orders,orderitems,bookswhere customers.customer#=orders.customer#and orders.order#=orderitems.order#and orderitems.isbn=books.isbnorder by title;-- 使用join进行多表联接select title,firstname,lastnamefrom customers join orders on customers.customer#=orders.customer#join orderitems on orders.order#=orderitems.order#join books on orderitems.isbn=books.isbnorder by title;-- 在外部联接时不能使用OR 或 IN-- 单行函
SQL入门之1 select 联接
内联接外联接全联接join的用法[@more@]-- 笛卡尔连接 交叉连接select title,name from books,publisher;select title,name from books cross join publisher;-- 相等连接 内连接-- 常规用法select title,name from books a,publisher b where a.pubid=b.pubid;-- 有公共列,使用natural join 或者usingselect title,name from books natural join publisher;select title,name from books join publisher using (pubid);-- 公共列名称不同,使用onselect title,name from books b join publisher p on b.pubid=p.putid;-- 不等连接-- 按照
一次日志文件损坏的恢复
出差回来,开发人员给我说,35数据库不能启动了[@more@]redo log file 损坏的处理过程一 查看日志Thu Mar 29 09:15:21 2007Errors in file d:oracleadmings12366bdumpgs12366_lgwr_2052.trc:ORA-00313: open failed for members of log group 1 of thread 1ORA-00312: online log 1 thread 1: 'D:ORACLEORADATAGS12366REDO01.LOG'ORA-27041: unable to open fileOSD-04002: unable to open fileO/S-Error: (OS 2) 系统找不到指定的文件。Thu Mar 29 09:15:21 2007Errors in file d:oracleadmings12366bdumpgs12366_lgwr_2052.trc:ORA-00313
oracle_datagrard 之Create笔记1
已有的环境准备机器一:IP: 10.0.10.85 已有普通的数据库gsweb,准备做为主库机器二:IP: 10.0.10.55 准备新增一个备库[@more@]已有的环境准备机器一:IP: 10.0.10.85 已有普通的数据库gsweb,准备做为主库机器二:IP: 10.0.10.55 准备新增一个备库/** 预处理:将机器二上的原来的一个数据库的数据文件目录和ADMIN目录改名为gsweb2 保留了机器二的口令文件。否则需要从主库机器上复制一个口令文件 */ --3.1.1 Enable Forced Logging 在主库上启用force logging模式--Place the primary database in FORCE LOGGING mode ALTER DATABASE FOR
加快排序与分页
在狼行天下的 blog中发现以下内容,可以排序与分页row_number() over(order by create_time desc) rk[@more@]在开发中应用慢select B.* from (select A.*, ROWNUM ROWNO from (select A.TITLE, TO_CHAR(A.CREATE_TIME, 'YYYY.MM.DD') AS CREATE_TIME, A.AUTHOR_ID, A.DOC_ID, A.ABSTRACT, A.PIC_ID AS IMAGE_ID, B.TYPE_ID from CT_DOCUMENT_L A,
oracle入门之1 rac下启动关闭与更改归档模式
项目施工时的一个例子[@more@]1.如何启动数据库 1. su - oracle 切换到orale用户 2. sqlplus /nolog conn sys/password as sysdba (password为sys用户的密码) startup 3. exit 4. lsnrctl start 启动listener2.关闭数据库步骤 1. su - oracle 切换到orale用户 2. lsnrctl stop 3. sqlplus /nolog conn sys/password as sysdba (password为sys用户的密码) shutdown immediate 4. exit3.确认数据库运行在归档模式 SQLPLUS > startup; SQLPLUS > select * from v$database; 其log
oracle 外部表 汉字转换为拼音
原来的应用中使用代码表加一个函数来处理汉字转拼音[@more@]在新的应用中需要将汉字转换为拼音,考虑使用外部表来实现create or replace directory data_dir as '/app/oracle/admin/gsweb/bdump/'/-- copy dm_hz.csv to $ORACLE_BASE/admin/gsweb/bdump/create table dm_hz( HZ varchar2(10) ,PY varchar2(10) ,SD varchar2(10) ,WB varchar2(10) ,YXBZ varchar2(10) )organization external(type oracle_loader default directory data_dir access parameters ( records delimited by newline FIELDS TERMINATED BY ',' missing fi
AIX 创建表空间 ORA-01144
移植数据时遇到的问题[@more@]# 增加表空间时出现以下错误 目标40G PPSIZE 256M$ mklv -y'gsweb_ctais1' -t'raw' cs12366 150 hdisk8SQL> /create tablespace ctais2 datafile '/dev/rgsweb_ctais2' size 39980M reuse autoextend off*ERROR at line 1:ORA-01144: File size (5117440 blocks) exceeds maximum of 4194303 blocks# 查看资源限制# 硬限制SQL> host ulimit -Hatime(seconds) unlimitedfile(blocks) unlimiteddata(kbytes) unlimitedstack(kbytes) 4194304memory(kbytes) unlimite
aix5.3 + oracle9206 建库过程中遇到的问题及解决
在CreateDB.sql时 ora-01031的解决方法[@more@]# 使用dbca生成建库脚本后,要copy init.ora from pfile to scripts# 在CreateDB.sql时 ora-01031的解决方法# 修改sqlnet.ora文件,注释掉# SQLNET.AUTHENTICATION_SERVICES= (NTS)vi /app/oracle/product/9.2.0/network/admin/sqlnet.ora# 如果不注释掉,oracle用户要在ora_dba组中,可以conn / as sysdba# 否则可以使用口令文件来验证登录。# 使用裸设备的问题# 创建vg vg's name is cs12366# 在vg下创建裸设备(lv)/usr/sbin/mklv -y'gsweb_system' -t'raw' cs12366 2 hdisk8...# 编辑映射
初识AQ
初识AQ[@more@]实现了以下内容/** 存储过程描述WW_AQ_ENQ 消息入队WW_AQ_DEQ 提取消息WW_AQ_ENQ2 以不同的优先级入队WW_AQ_DEQ2 提取有优先级的消息WW_AQ_ENQ3 建立6个消息并入队WW_AQ_DEQ31 指定消息出队模式为browse 直接提取指定msgid的消息WW_AQ_DEQ32 在locked模式下检索blue,然后删除blue消息WW_AQ_ENQ4 对于消息延迟和过期的处理WW_AQ_ADD_SUBSCRIBER 增加订阅者W_AQ_RECIPIENTS message1入队,提供给订阅者,message2入队,重新定义接收者W_AQ_RECIPIENTS_DEQ 根据不同接收者接收消息W_AQ_RECIPIENTS_DEQ_BLUE blue