最近在做的项目已经做好,甲方突然要求将数据库换为oracle数据库,之前做维护的时候使用过oracle,这次在开发中应该会有不一样的体验,在此记录下来。
第一天,到甲方去安装oracle数据库的客户端,并试图调试代码。结果oracle安装成功,但代码肯定是不行的,安装了粉红色的PL/SQL用于操作数据库。
第二天,到甲方处在新建的客户端里创建数据库表/triggers /sequences,没什么好说的。
需要注意的是,数据库的数据类型需改变,oracle中数字是number,在oracle中直接在table中建表失败了,不知为何,只能使用代码建表了。
创建表并插入数据:
CREATE TABLE dt_student(
id number NOT NULL Primary Key,
name varchar(8) NOT NULL ,
address varchar(30) NOT NULL ,
phone number
brith date
);
insert into dt_student values('20062501','张三','asdfasdfasd','13305311234','21-6月-85');
insert intodt_studentvalues('002','李四','男');
insert intodt_studentvalues('003','王二','女');
由于需要ID能够自增需要建trigger/sequence:
create sequence dt_student sequence
increment by 1
start with 1
nomaxvalue
nocycle
nocache
create trigger dt_student_trigger before
insert on dt_student for each row when(new.id is null)
begin
select dt_student_sequence.nextval into:new.id from dual;
end;
第三天,开始调试代码,原来的代码中有TOP<1,在使用中发现oracle不支持这种用法,需要改为whererownum < n 。代码中有多处需要修改,改了一整天。
第四天,代码中的@用法貌似不支持oracle数据库,将代码中所有的@改为分号(;)。这天和甲方的人闲聊几句,问他们为什么一定要用oracle数据库,得到的答复是这样比较高上大。