使用Marathon创建表可以通过可视化的界面来完成,但要创建视图就不像使用SQL Server 2000企业管理器创建视图那样方便了,而是要通过编写SQL语句来完成,这就要求我们必须对标准的SQL语言掌握的很好。
下面是创建一个视图的SQL语句
create view V_2 (F1,F2,F3,F4,F5)
as
select T_1.C1,T_1.C2,T_1.C3,T_2.C1,T_2.C3 from T_1,T_2
where T_1.C1=T_2.C2
在SQL Server 2000中编写触发器时,inserted和deleted是会被经常用到的,而在Firebird中它们变成了new和old。还有一点与SQL Server 2000不同的是Firebird将触发器分成了六种(before insert,after insert,before update,after update,before delete,after delete),这样我们在编写Firebird触发器时就可以更加自如的控制触发器执行的时间了。
下面是一个简单的after insert触发器
create trigger TR_1 for T_1 active after insert position 0
as
begin
insert into T_2 values((select max(C1) from T_2)+1,new.C1,new.C3);
end
接下来,我们看看Firebird中的存储过程
create procedure SP_1_ADD (
F1 integer,
F2 date,
F3 varchar(40) character set GB_2312)
as
begin
insert into T_1 values(? /* F1 */ ,? /* F2 */ ,? /* F3 */ );
end
这是一个简单的插入记录的存储过程。它与我们在SQL Server中创建的存储过程有着很大的区别,首先是在存储过程参数的声明上,其次是在使用参数的时候,Firebird数据库使用的是占位符?。