关于使用ASP.NET和数据库的笔记

     最近刚刚完成了一个ASP.NET的项目,虽然很小,但是帮我熟悉了ASP.NET,同时也巩固了数据库的一

些操作的知识。
1、关于自增id
 (1)、在sqlserver中,使用identity表示,sql语句为:alter table 表名 add 列名 int

identity(1,1);在企业管理器中,可以手动改,修改字段类型为int,标识改成是,也可以实现。也

可使用select max(自增id的列名) 找出最大的。
 (2)、在oracle中,使用sequence,每个表都建一个对应的sequence,插入数据时,id列使用

sequence名.nextval。
2、插入数据
  (1)sqlserver中,例如
     事务:

    declare @n int      insert into 表1 values(a,b);      set @n=@@identity      insert into 表2 values(@n,c,d);        if @@ERROR = 0    begin    commit transaction;    end    else    begin    rollback transaction;    end

   (2)Oracle中

 begin transaction       DECLARE       n int; m int;    select 表1序列.nextval into n from dual;    select 表2序列.nextval into m from dual;     int insert into 表1(id)    values(n);     insert into 表2(id)     values(m);     commit;     exception      when others then       rollback;       end;

 oracle中序列不能赋值给变量,只能用select。oracle赋值:=。
  3、关于时间的使用
   (1)insert时间时,直接加单引号,将其当成字符串出错几率会小一些
    (2) oracle中可以使用to_date函数转换。详见

http://blog.csdn.net/yysyangyangyangshan/article/details/6924279
  4、oracle中的分页

SELECT  FROM 表1  WHERE 条件1  AND 表1.ROWID IN (SELECT RID FROM (SELECT ROWNUM RN,RID FROM(SELECT ROWID RID,表1.id FROM  BM_SUGGESTION c ORDER BY 表1.id DESC)  WHERE ROWNUM<pageIndex * pageSize) WHERE RN>(pageIndex - 1) * pageSize) ORDER BY 表1.id  DESC  

你可能感兴趣的:(oracle,exception,数据库,asp.net,insert,sqlserver)