SQL大全[2]
作者 佚名技术
来源 数据库编程
浏览
发布时间 2012-03-22
did DECIMAL(3), name VARCHAR(40) UNIQUE ); 上面的和下面这样作为一个表约束声明是一样的∶ CREATE TABLE distributors ( did DECIMAL(3), name VARCHAR(40), UNIQUE(name) ); 兼容性 SQL92 CREATE TABLE遵循 和 SQL99 的一个子集 的中间状态,一些例外情况在下面和上面的诊断中列出. 临时表 除了局部临时表之外, 还定义了 CREATE GLOBAL TEMPORARY TABLE 语句. 全局临时表也可以在其它会话中可见. 对于临时表,有一个可选的 ON COMMIT 子句∶ CREATE { GLOBAL | LOCAL } TEMPORARY TABLE table ( ... ) [ ON COMMIT { DELETE | PRESERVE } ROWS ] ON COMMIT 子句表明该临时表在执行 COMMIT 的时候是否应该清空行. 如果省略了 ON OMMIT 子句, 声明缺省是 ON COMMIT DELETE ROWS.不过, PostgreSQL 的行为总是类似 ON COMMIT PRESERVE ROWS. NULL "约束" NULL "约束"(实际上不是约束) 是 PostgreSQL 对 的扩展,包括它是为了和其它一些 RDBMS 兼容(以及为了和 NOT NULL 约束对称).因为它是任何字段的缺省,所以它的出现只是噪音而已. 断言 断言是一种特殊类型的完整性约束,它和其它约束共享相同的名字空间. 不过,断言和约束不同的是,它不一定依赖于某个特定的表,因此 提供了 CREATE ASSERTION 语句作为定义 约束的一个可选的方法∶ CREATE ASSERTION name CHECK ( condition ) PostgreSQL 目前还没有实现断言. 继承 通过 INHERITS 子句的多重继承是 PostgreSQL 语言的扩展. SQL99(但不包括 )使用不同的语法和语义定义了单继承. SQL99 风格的继承还没有在 PostgreSQL 中实现. 对象 ID PostgreSQL 的 OID 的概念不是标准. 又见 ALTER TABLE , DROP TABLE -------------------------------------------------------------------------------- CREATE TRIGGER Name CREATE TRIGGER -- 定义一个新的触发器 Synopsis CREATE TRIGGER name { BEFORE | AFTER } { event [OR ...] } ON table FOR EACH { ROW | STATEMENT } EXECUTE PROCEDURE func ( arguments ) 输入 name 赋予新触发器的名称. table 现有表名称. event INSERT,DELETE 或 UPDATE 之一. func 一个用户提供的函数. 输出 CREATE 如果触发器成功创建,返回此信息. 描述 CREATE TRIGGER将向现有数据库中增加一个新的触发器. 触发器将与表 table 相联并且将执行声明的函数 func. 触发器可以声明为在对记录进行操作之前 在检查约束之前和 INSERT,UPDATE 或 DELETE 执行前)或之后(在检 查约束之后和完成 INSERT, UPDATE 或 DELETE 操作)触发. 如果触发器在事件之前,触发器可能略过当前记录的操作或改变被插入的(当前)记录(只对 INSERT 和 UPDATE 操作有效). 如果触发器在事件之后,所有更改,包括最后的插入,更新或删除对触发器都是"可见"的. SELECT并不更改任何行,因此你不能创建 SELECT 触发器.这种场合下规则和视图更合适些. 请参考 PostgreSQL 程序员手册中SPI 和触发器章节获取更多信息. 注意 CREATE TRIGGER是 PostgreSQL 语言扩展. 只有表所有者可以就此表创建一个触发器. 在当前的版本,STATEMENT 触发器还没有实现. 请参考 DROP TRIGGER 获取如何删除触发器的信息. 用法 在插入或更新表 films 之前检查一下声明的分销商代码是 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于SQL大全[2]的所有评论