[英]How to create trigger in Oracle sql developer? Getting Error
以下是我創建觸發器的代碼,如下所示。
CREATE or REPLACE TRIGGER sms_trigger
AFTER INSERT ON student
FOR EACH ROW
ENABLE
DECLARE lclcmd CHAR(255);
DECLARE res VARCHAR(255);
BEGIN
SET lclcmd = CONCAT("php C:/xampp/htdocs/sample/sms_send.php");
SET res = sys_exec(lclcmd);
END;
運行上述代碼后,出現如下錯誤
1) Error(1,5): PLS-00103: Encountered the symbol "DECLARE" when expecting
one
of the following: begin function pragma procedure subtype type <an
identifier> <a double-quoted delimited-identifier> current cursor delete
exists prior The symbol "begin" was substituted for "DECLARE" to continue.
2) Error(4,11): PLS-00103: Encountered the symbol "LCLCMD" when expecting
one of the following: transaction <a SQL statement>
檢查以下內容,注意concat函數是錯誤的,您已經向concat添加了一個字符串..。
請注意,您不必再使用一次聲明,也不必添加SET
,並且在要分配值時必須放入:=
。
CREATE or REPLACE TRIGGER sms_trigger
AFTER INSERT ON student
FOR EACH ROW
ENABLE
DECLARE
lclcmd VARCHAR(255);
res VARCHAR(255);
BEGIN
lclcmd := CONCAT('php C:/xampp/htdocs/sample/sms_send.php','something');
res := sys_exec(lclcmd);
END;
/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.