Oracle基础知识

1.PL/SQL中TOP用法

Select * FROM TABLE1 Where ROWNUM<=10
2.oracle中的ID号如何实现自增长
使用sequence

--创建sequence
CREATE SEQUENCE emp_sequence  
    INCREMENT BY 1  -- 每次加几个  
    START WITH 1    -- 从1开始计数  
    NOMAXVALUE      -- 不设置最大值  
    NOCYCLE         -- 一直累加,不循环  
    CACHE 10;  

一旦定义了emp_sequence,你就可以用CURRVAL,NEXTVAL  
 CURRVAL=返回 sequence的当前值  
 NEXTVAL=增加sequence的值,然后返回 sequence 值

INSERT INTO emp VALUES   
(empseq.nextval, 'LEWIS', 'CLERK',7902, SYSDATE, 1200, NULL, 20);  

SELECT empseq.currval     FROM DUAL; 
3.pl/sql里的左连接和右连接符号“+”
Oracle里可以用“+”来代替左右连接。[@more@]
SELECT emp_name, dept_name 
FORM Employee, Department
WHERE Employee.emp_deptid(+) = Department.deptid
此SQL文使用了右连接,即“(+)”所在位置的另一侧为连接的方向,右连接说明等号右侧的所有记录均会被显示,无论其在左侧是否得到匹配,也就是说上例中无论会不会出现某个部门没有一个员工的情况,这个部门的名字都会在查询结果中出现。
反之:
SELECT emp_name, dept_name 
FORM Employee, Department
WHERE Employee.emp_deptid = Department.deptid(+)
则是左连接,无论这个员工有没有一个能在Department表中得到匹配的部门号,这个员工的记录都会被显示
SQL> select a.studentno, a.studentname, b.classname
2 from students a, classes b
3 where a.classid(+) = b.classid; 
STUDENTNO STUDENTNAM CLASSNAME
---------- ---------- ------------------------------
1 周虎 一年级一班
2 周林 一年级二班
一年级三班
以上语句是右连接:
即"(+)" 所在位置的另一侧为连接的方向,右连接说明等号右侧的所有记录均会被显示,无论其在左侧是否得到匹配。也就是说上例中,无论会不会出现某个班级没有一个学生的情况,这个班级的名字都会在查询结构中出现。


反之: 
SQL> select a.studentno, a.studentname, b.classname
2 from students a, classes b
3 where a.classid = b.classid(+);
STUDENTNO STUDENTNAM CLASSNAME
---------- ---------- ------------------------------
1 周虎 一年级一班
2 周林 一年级二班
3 钟林达
则是左连接,无论这个学生有没有一个能在一个班级中得到匹配的部门号,这个学生的记录都会被显示。
4.PL/SQL Developer 连接Oracle数据库详细配置方法
http://www.cnblogs.com/DebugLZQ/archive/2012/06/27/2565476.html
5.PL/SQL Developer 远程连接Oracle数据库
http://www.2cto.com/database/201112/114436.html

连接Oracle时报错ORA-12541: TNS: 无监听程序
http://jingyan.baidu.com/article/03b2f78c7a0ab75ea237ae33.html
http://blog.youkuaiyun.com/wwbmyos/article/details/11475551/

6.Oracle 单引号
lsql   :='select   a.jhmbdm,   a.chehao,   a.checi,   a.xldm,   a.zws,   a.fcsj,   a.xybz       from   dd_cpjhmb   a     where   a.xybz   =''Y'' and a.checi='''||v_aa||''' ';
v_aa代表传入的变量,如果是常量,直接''Y''就可以了
 

oracle中的ID号如何实现自增长

oracle中的ID号如何实现自增长


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值