5

私はSQLを実行するためにheidisqlでmariadbを使用しています:

DECLARE @AccountID INT;

アカウントに挿入 (first_name, mi, last_name, email, is_admin, is_enabled, date_created) Values('testfirstname', 'a', 'testlastname', 'user@email.com', 1, 1, NOW());

set @AccountID = Last_Insert_Id();

エラーが発生し続けます:

QL エラー (1064): SQL 構文にエラーがあります。1行目の「@AccountID INT」の近くで使用する正しい構文については、MariaDBサーバーのバージョンに対応するマニュアルを確認してください */

Declare の使用法を見ていましたが、関数で使用されていると書かれています。DECLARE の前と後に同じエラーで BEGIN/END を試してみました。
これがSQLサーバーで機能するmysql構文は初めてです。だから誰かが私が間違っていたことを私に知らせることができれば、それはありがたいです.

ありがとう

4

3 に答える 3

8

私はmariadbバージョン10.0.19を使用しています

上記の問題は説明されており、
ここで簡単な解決策があります: Delimiters in the mysql Client

要するに:

DELIMITER //
関数を作成します.. いつものように
BEGIN
.. いつものように
END
//
DELIMITER ;

(受け入れられた解決策は機能しませんでした!)

于 2015-06-10T20:23:34.300 に答える
2

を取り外しますDECLARE。必要ありません。

于 2014-01-12T01:41:03.063 に答える