sql >> データベース >  >> RDS >> Mysql

mysqlのストアドプロシージャで区切り文字が使用されるのはなぜですか?

    Mysqlのデフォルトの区切り文字は;です。 これは、コマンドラインの1つのステートメントに使用されます。

    select * from users ;
    

    コード全体を実行するトリガーまたはストアドプロシージャを作成する場合、mysqlはそれがコード/クエリのブロックであることを理解する必要があります。

    区切り文字が指定されていない場合、mysqlが;に遭遇したとき ストアドプロシージャまたはトリガー内では、それを1つのステートメントと見なし、実行しようとします。したがって、ストアドプロシージャまたはトリガーの区切り文字を提供し、その区切り文字内のすべてが1つの完全なコードセットであることをmysqlに認識させる必要があります。

    したがって、あなたの例では

    SELECT * FROM products; 
    

    ;以外の区切り文字がある場合は、完全なステートメントの一部になります。 最初に提供されます。




    1. json配列をテキスト配列にキャストする方法は?

    2. UnicodeEncodeError:'latin-1'コーデックは文字をエンコードできません

    3. データベースリンクを介してOracleストアドプロシージャを実行する方法

    4. 手動の日付ベースのデータ入力に対応するために、どのような種類のスキーマを使用できますか?