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
×Ó¾ä
Ïà¹ØÎĵµ£º
ÊÂÎñ£¨DbTransaction£©£º
SQLite ȱʡΪÿ¸ö²Ù×÷Æô¶¯Ò»¸öÊÂÎñ£¬ËùÒÔ³ÉÅú²åÈëµÄʱºò£¬Æô¶¯ÊÂÎñ£¬±È²»Æô¶¯ÊÂÎñ¿ìn±¶¡£
ÔÚûÆô¶¯ÊÂÎñ֮ǰÍùSqliteÊý¾Ý¿âÀï²åÈë1000¶àÌõÊý¾ÝµÄÇé¿ö,½á¹ûÿ´Î¶¼ÐèÒªÒ»Á½·ÖÖÓ²ÅÄÜÍê³É.
¶øÔÚÆô¶¯ÊÂÎïÒÔºóËùÐèÒªµÄʱ¼äÖ±½Ó±ä³É²»µ½2Ãë!ÔÀ´sqlite»¨Á½·ÖÖÓÊÇÓÉÓÚExecuteNonQuery·½·¨Ö´ÐÐʱ×Ô¼ºÌá½» ......
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 ......
½ñÌìÓöµ½ÁËÂé·³£º
ÓÃEclipse±àÒëpythonÏòsqliteÊý¾Ý¿â²åÈëÊý¾Ý×ÜÊÇÌáʾ±àÂëµÄÎÊÌ⣬ÎÒÉèÖÃÁËEclipseµÄworkspaceÓÃutf-8±àÂ뻹ÊDz»ÐÐ
µ«ÊÇÓÃEclipseдµÄ³ÌÐò±£´æÔÙÓÃIDLE´ò¿ªÈ´ÄܱàÒë£¬Ææ¹ÖÁË
ÎÒ¿¼Âǵ½¿ÉÄÜÊÇÅäÖõÄÔÒò£¬ÕÒÕÒ±éÁËËùÓеÄÅäÖ㬶¼Ã»ÓÐÎÊÌ⣬°üÀ¨¹¤³ÌÎļþ
×îºóÎÒÓÃxvi32´ò¿ ......
ÔÚSQLite on BlackBerryÉÏ£¬JDBC·ÃÎÊÊý¾Ý¿â£¬È±Ê¡ÊÇÒÔUTF-8±£´æÊý¾Ýµ½Êý¾Ý¿âÀïÃæµÄ£¬Ã¿¸öÖÐÎÄͨ³£ÊÇ3¸ö×Ö½Ú±£´æµ½Êý¾Ý¿âÉÏÃæµÄ¡£
Àý×Ó´úÂë²Î¿¼£º
BlackBerry sample - SQLiteDemo¡£
×¢Ò⣺ÔÚ²åÈëÖÐÎĵÄʱºò£¬ÇëʹÓÃStatement.bindÖ¸ÁÔÚÎҵIJâÊÔÖУ¬¿ÉÒԺܺõı£´æÖÐÎÄÊý¾Ý¡£¶ÁÈ¡µÄʱºòÖ»ÐèҪʹÓÃResult ......
QT¶ÁдSqliteÊý¾Ý¿â
//.h
/****************************************************************************
**
** Date : 2010-05-08
** Author : furtherchan
** If you have any questions , please contact me
**
****************************************************************** ......