sql MySQL的存储过程 - 将Drupal中的大量更新* _format值表格转换为指定格式。这在您更改默认f时很有用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql MySQL的存储过程 - 将Drupal中的大量更新* _format值表格转换为指定格式。这在您更改默认f时很有用相关的知识,希望对你有一定的参考价值。

CREATE PROCEDURE changeFieldFormatValueTo (IN format_name VARCHAR(32))
BEGIN
  DECLARE done INT DEFAULT FALSE;
  DECLARE table_name_value VARCHAR(64);
  DECLARE column_name_value VARCHAR(64);
  DECLARE cursor_fields CURSOR FOR SELECT TABLE_NAME, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME LIKE 'field_%_format';
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
	
  OPEN cursor_fields;

  ColumnList: LOOP
    FETCH cursor_fields INTO table_name_value, column_name_value;
    
    IF done THEN 
      Leave ColumnList;
    END IF;
    
    SET @sql = CONCAT('UPDATE ', table_name_value, ' SET ', column_name_value, ' = "', format_name, '"');
    PREPARE stmt FROM @sql;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;

  END LOOP;

  CLOSE cursor_fields;
END;

以上是关于sql MySQL的存储过程 - 将Drupal中的大量更新* _format值表格转换为指定格式。这在您更改默认f时很有用的主要内容,如果未能解决你的问题,请参考以下文章

Mysql存储过程和函数

如何使用来自 c# 的 MySQL 存储过程将表作为输入发送到存储过程?我有 T-SQL 工作

如何将 SQL Server 存储过程迁移到 Mysql [关闭]

将 SQL Server 存储过程重写为 MySQL(MariaDB)

将 MS SQL 存储过程移植到 MySQL

Sql server 存储过程中怎么将变量赋值?