惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
D
DataBreaches.Net
M
MIT News - Artificial intelligence
量子位
N
Netflix TechBlog - Medium
The Cloudflare Blog
The GitHub Blog
The GitHub Blog
P
Proofpoint News Feed
人人都是产品经理
人人都是产品经理
B
Blog RSS Feed
B
Blog
博客园_首页
博客园 - Franky
MyScale Blog
MyScale Blog
有赞技术团队
有赞技术团队
Apple Machine Learning Research
Apple Machine Learning Research
MongoDB | Blog
MongoDB | Blog
云风的 BLOG
云风的 BLOG
爱范儿
爱范儿
H
Help Net Security
Y
Y Combinator Blog
Stack Overflow Blog
Stack Overflow Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
酷 壳 – CoolShell
酷 壳 – CoolShell

博客园 - YiStudio

在Word中插入图片 DataGridView多列排序 将Word嵌入到自己的程序中 一个非常不错的压缩组件 免费的国产报表Grid++Reprot 使用NSIS制作安装包(2) 使用NSIS制作安装包(1) SharpDevelop2.0 用Firebird .NET Data Provider编写.NET应用程序(2) 用Firebird .NET Data Provider编写.NET应用程序(1) 用Marathon管理Firebird数据库(1) Firebird简介 NDoc修改手记(三) NDoc修改手记(二) NDoc修改手记(一) WebForm中将DataGrid中导出数据的方法 FxCop EXCEL2003中使用XML 动态加载类(动态加载DLL文件)
用Marathon管理Firebird数据库(2)
YiStudio · 2005-07-08 · via 博客园 - YiStudio

使用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数据库使用的是占位符?。