oracle merge into 用法详解
转自:http://hi.baidu.com/magus163/blog/item/a4f783178e39ef00c93d6de6.html
【这篇文章例子讲解的比较详细,我就转过来了】
Oracle9i引入了MERGE命令,你能够在一个SQL语句中对一个表同时执行inserts和updates操作. MERGE命令从一个或多个数据源中选择行来updating或inserting到一个或多个表.
Oracle 10g中MERGE有如下一些改进:
1、UPDATE或INSERT子句是可选的
2、UPDATE和INSERT子句可以加WHERE子句
3、ON条件中使用常量过滤谓词来insert所有的行到目标表中,不需要连接源表和目标表
4、UPDATE子句后面可以跟DELETE子句来去除一些不需要的行
首先创建示例表:
create table PRODUCTS
(
PRODUCT_ID INTEGER,
PRODUCT_NAME VARCHAR2(60),
CATEGORY VARCHAR2(60)
);
insert into PRODUCTS values (1501, 'VIVITAR 35MM', 'ELECTRNCS');
insert into PRODUCTS values (1502, 'OLYMPUS IS50', 'ELECTRNCS');
insert into PRODUCTS values (1600, 'PLAY GYM', 'TOYS');
insert into PRODUCTS values (1601, 'LAMAZE', 'TOYS');
insert into PRODUCTS values (1666, 'HARRY POTTER', 'DVD');
commit;
create table NEWPRODUCTS
(
PRODUCT_ID INTEGER,
PRODUCT_NAME VARCHAR2(60),
CATEGORY VARCHAR2(60)
);
insert into NEWPRODUCTS values (1502, 'OLYMPUS CAMERA', 'ELECTRNCS');
insert into NEWPRODUCTS values (1601, 'LAMAZE', 'TOYS');
insert into NEWPRODUCTS values (1666, 'HARRY POTTER', 'TOYS');
insert into NEWPRODUCTS values (1700, 'WAIT INTERFACE', 'BOOKS');
commit;
1、可省略的UPDATE或INSERT子句
在Oracle 9i, MERGE语句要求你必须同时指定INSERT和UPDATE子句.而在Oracle 10g,
你可以省略UPDATE或INSERT子句中的一个.
下面的例子根据表NEWPRODUCTS的PRODUCT_ID字段是否匹配来updates表PRODUC
相关文档:
SQL中的单记录函数
1.ASCII
返回与指定的字符对应的十进制数;
SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;
A A ZERO ......
1、安装
2、创建“本地Net服务名”
3、PLSQL Developer 连接测试
4、创建表空间
1.打开sqlplus工具:
sqlplus /nolog
2. 连接数据库:
conn /as sysdba
3. 创建表空间:
create tablespace camds datafile 'D:\oracle\product\10.2.0\oradata\camds\camds.dbf' size  ......
在数据库服务器上,建立了一个用户test,然后使用命令drop user test cascade删除了用户,接着也删除了这个用户的数据文件/opt/oracle/oradata/test/testdata.dbf。当在登录数据库时,能够启动实例,但是打不开数据库,系统报错:
ORA-01157: c ......
首先找到路径:
E:\Oracle Enterprise_Standard Edition_11.1.0.7\database\stage\prereq\db\refhost.xml
如下节点:
<!--Microsoft Windows Vista-->
<OPERATING_SYSTEM>
<VERSION VALUE="6.0"/>
</OPERAT ......
author:skate
time:2010/03/03
oracle常用数据类型
今天同事问些数据类型的问题,有的还真有点记不清了,于是就简单总结下常用的数据类型以备日后查用
1、Char
定长格式字符串,在数据库中存储时不足位数填补空格,它的声明方式如下CHAR(L),L为字符串长度,
缺省为1,作为变量最大32767个字符,作为数据存储在ORA ......