易截截图软件、单文件、免安装、纯绿色、仅160KB

SQLite语法 CREATE TRIGGER


时间:
2009-08-14 21:18:18来源:
网络 作者:

知 点击:
214

CREATE TRIGGER
    
        
            sql-statement ::=
            CREATE [TEMP | TEMPORARY] TRIGGER trigger-name [ BEFORE | AFTER ]
            database-event ON [database-name .] table-name
CREATE TRIGGER
sql-statement
 ::=
CREATE
[TEMP
|

TEMPORARY
] TRIGGER
trigger-name

[ BEFORE
|
AFTER
]

database-event
ON
[database-name
.
]
table-name

trigger-action
sql-statement
 ::=
CREATE
[TEMP
|

TEMPORARY
] TRIGGER
trigger-name
INSTEAD OF

database-event
ON
[database-name
.
]
view-name

trigger-action
database-event
 ::=
DELETE
|

INSERT
|

UPDATE
|

UPDATE OF
column-list
trigger-action
 ::=
[ FOR EACH ROW
|
FOR EACH
STATEMENT
]
[ WHEN
expression

]
BEGIN
    
trigger-step
;
[
trigger-step
;
]*
END
trigger-step
 ::=
update-statement

|

insert-statement

|


delete-statement

|

select-statement
CREATE
TRIGGER语句用于向数据库schema中添加触发器。触发器是一些在特定的数据库事件(database-event
)
发生时自动进行的数据库操作(trigger-action
).
触发器
可由在特殊表上执行的DELETE, INSERT, UPDATE等语句触发,或UPDATE表中特定的字段时触发。
现在
SQLite仅支持FOR EACH ROW触发器,不支持FOR EACH STATEMENT触发。因此可以不用明确说明FOR EACH ROW
.FOR EACH ROW的意思是由trigger-steps
说明的SQL语句可能在(由WHEN子句决定的)数据库插入,更改或删除
的每一行触发trigger.
WHEN
子句


相关文档:

SQLite不支持的SQL语法总结


1 TOP
这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录:
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
但是这条SQL语句在SQLite中是无法执行的,应该改为:
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
其中limit 0,10表示从第0条记录开始,往后 ......

SQLite数据库的挂接及常用命令

安装:
官方网站下载最新的sqlite版本
官方网站: http://www.sqlite.org/
下载地址为: http://www.sqlite.org/download.html
官方的下载页面提供了很多版本的下载…这里介绍一下;
Source Code: 源代码版本的下载
Documentation:  相关文档
Precompiled Binaries for Linux / Precompiled Binaries For Mac ......

SQLite与C结合

SQLite官方网站例子:
#include <stdio.h>
#include <sqlite3.h>
static int callback(void *NotUsed, int argc, char **argv, char **azColName){
int i;
for(i=0; i<argc; i++){
printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
}
printf("\n");
return 0;
}
i ......

Linux下创建数据库表(sqlite3)的脚本

本文以数据库中的数据表UserInfo为实例展示数据库表的创建及数据记录的录入。
#!/bin/sh
#variables definition
#database location
db=/conf/db
#
#create table userInfo
#name: User name
#passwd: Password
#Privilege: User privilege -- Administrator:0 Operator:1
#
echo "create table UserInfo(n ......

SQLite的封装类

package
{
import flash.data.SQLConnection;
import flash.data.SQLResult;
import flash.data.SQLStatement;
import flash.errors.SQLError;
import flash.events.SQLErrorEvent;
import flash.events.SQLEvent;
import flash.filesystem.File;

import mx.collections.Ar ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号