老虎的笔记 Oracle9i专题

来源:互联网 发布:网络主播哪个平台好 编辑:程序博客网 时间:2024/04/28 00:06

Oracle9i专题

Oracle不支持类似于 MySQL 中的 limit. 但你还是可以rownum来限制返回的结果集的行数.
如果你只希望返回前十行纪录,你可以这样写:

SELECT * FROM table WHERE ROWNUM<10;
但是下面的语句是不对的:

SELECT * FROM table WHERE ROWNUM>90 AND ROWNUM<100;
这是因为 Oracle 认为这个条件不成立,所以没有返回。

你应该这样写:

SELECT * FROM table WHERE ROWNUM<101;
minus
SELECT * FROM table WHERE ROWNUM<91;

 

2cursor c_ppp is

  SELECT ppp.a, ppp.b, ppp.c, ppp.d

    FROM ppp

    FOR UPDATE OF ppp.b, ppp.d NOWAIT;

其中的"FOR UPDATE OF ppp.b, ppp.d NOWAIT"是什么意思呀?"NOWAIT"有和没有表示什么?

立即行锁,nowait代表马上上锁,默认是wait,就是有人在使用该行就等待他释放

 

3.有一个表,在表中过滤后填充到DATAGRID

              DataView dv = new DataView();

              dv.Table = Th_Role.GetTable();

              dv.RowFilter = "ID='1'";

              //dv.Sort = "ID DESC";

  

              this.DataGrid1.DataSource=dv;

              this.DataGrid1.DataBind();

 

4SQL SERVER/ORACLE比较

PL-SQL:

select usertable.*,

       t.name

  from bm t,

       usertable

 where t.id = usertable.bm

T-SQL:

SELECT *, BM.NAME AS BM_NAME

FROM USERTABLE, BM

WHERE USERTABLE.BM = BM.ID

5.一人类似于SPLIT的功能(ORACLE

create or replace procedure test1
is
 ls varchar2(
255) :='1k,34,6r';
 pos integer :=
0;
begin
  pos := instr(ls,
',');
while pos >
0 loop
insert into bm (id) values (substr(ls,
1,pos - 1));
   ls := substr(ls,pos +
1);
    pos := instr(ls,
',');
end loop;

commit;

end test1;

 

6.下垃框的选定

DropDownList_board.Items.FindByValue(DropDownList_board_text).Selected = True

 

7.从表AA中去掉BB中的记录

SELECT ID

FROM AA

WHERE (ID NOT IN

          (SELECT BB.ID

         FROM AA, BB

         WHERE AA.ID = BB.ID))

原创粉丝点击