Rumah  >  Artikel  >  pangkalan data  >  MySQL 存储过程中执行动态 SQL 语句

MySQL 存储过程中执行动态 SQL 语句

WBOY
WBOYasal
2016-06-07 14:54:301173semak imbas

无详细内容 MySQL mysqlmysql delimiter $$mysqlmysql CREATE PROCEDURE set_col_value - (in_table VARCHAR(128), - in_column VARCHAR(128), - in_new_value VARCHAR(1000), - in_where VARCHAR(4000)) - - BEGIN - DECLARE l_sql VARCHAR(4000); - SET l_s

MySQL
mysql>
mysql> delimiter $$
mysql>
mysql> CREATE PROCEDURE set_col_value
    ->        (in_table     VARCHAR(128),
    ->         in_column    VARCHAR(128),
    ->         in_new_value VARCHAR(1000),
    ->         in_where     VARCHAR(4000))
    ->
    -> BEGIN
    ->    DECLARE l_sql VARCHAR(4000);
    ->    SET l_sql=CONCAT_ws(' ',
    ->                'UPDATE',in_table,
    ->                   'SET',in_column,'=',in_new_value,
    ->                ' WHERE',in_where);
    ->    SET @sql=l_sql;
    ->    PREPARE s1 FROM @sql;
    ->    EXECUTE s1;
    ->    DEALLOCATE PREPARE s1;
    -> END$$
Query OK, 0 rows affected (0.00 sec)
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn