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Óô¥·¢Æ÷À´Ìæ´úÍâ¼üÔ¼Êø CREATE TABLE [Category] (
[Pkid] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
[CategoryName] NVARCHAR(32) NOT NULL,
[CategoryGuid] char(36) UNIQUE NOT NULL,
[CategoryDesc] nvarchar(256) NULL
) 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 ......
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 ......
½ñÌìÓöµ½ÁËÂé·³£º
ÓÃEclipse±àÒëpythonÏòsqliteÊý¾Ý¿â²åÈëÊý¾Ý×ÜÊÇÌáʾ±àÂëµÄÎÊÌ⣬ÎÒÉèÖÃÁËEclipseµÄworkspaceÓÃutf-8±àÂ뻹ÊDz»ÐÐ
µ«ÊÇÓÃEclipseдµÄ³ÌÐò±£´æÔÙÓÃIDLE´ò¿ªÈ´ÄܱàÒë£¬Ææ¹ÖÁË
ÎÒ¿¼Âǵ½¿ÉÄÜÊÇÅäÖõÄÔÒò£¬ÕÒÕÒ±éÁËËùÓеÄÅäÖ㬶¼Ã»ÓÐÎÊÌ⣬°üÀ¨¹¤³ÌÎļþ
×îºóÎÒÓÃxvi32´ò¿ ......