MySQL はストアド プロシージャが作成された環境を保存しますか?

WBOY
リリース: 2023-09-11 11:49:02
転載
730 人が閲覧しました

MySQL 是否保留存储过程创建时的环境?

実際には、MySQL はストアド プロシージャが作成された環境を保持します。これは、2 つのバーを使用して文字列を連結する次の例から理解できます。これは、SQL モードが ANSI の場合にのみ有効です。ただし、SQL モードを非 ANSI に変更しても、プロセスは元の設定が依然として true であるかのように動作します。

mysql> Set sql_mode = 'ansi'//
Query OK, 0 rows affected, 1 warning (0.14 sec)

mysql> Create Procedure Con_string()
    -> SELECT 'a'||'b'//
Query OK, 0 rows affected (0.12 sec)
mysql> Call Con_string ();
+----------+
| 'a'||'b' |
+----------+
| ab       |
+----------+
1 row in set (0.05 sec)

Query OK, 0 rows affected (0.05 sec)

mysql> Set sql_mode = '';
Query OK, 0 rows affected (0.00 sec)

mysql> Call Con_string();
+----------+
| 'a'||'b' |
+----------+
| ab       |
+----------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.00 sec)
ログイン後にコピー

上記の結果セットは、SQL モードを非 ANSI に変更した後でも、プロシージャ Con_string() は SQL を実行した場合と同じように生成することを示しています。モードは依然として ansi の結果です。ただし、SQL モードを非 ANSI に変更したため、新しいプログラムは両方のバーを受け入れません。

えええええ

以上がMySQL はストアド プロシージャが作成された環境を保存しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート