mysql将所有数据库的表的相同字段更新为某一值

1、创建存储过程
函数名为:proc_update_client_id
CREATE PROCEDURE `proc_update_client_id`( )
BEGIN
-- 定于全局变量tableName,就是循环时的表名
DECLARE tableName VARCHAR (200);
-- 定义全局变量sql,就是每次循环执行的sql语句
DECLARE sqls VARCHAR ( 200 );
-- 定于全局变量done,默认为false,如果循环完毕,值变为true
DECLARE done INT DEFAULT FALSE;
-- 定于全局变量,要更新的值
DECLARE clientId VARCHAR(200); -- 声明游标,游标对应的结果集为查询出的所有符合条件的表名,
-- 下面的select语句为查询表名,其中的TABLE_SCHEMA就是数据库名
DECLARE cursor_name CURSOR FOR
SELECT
CONCAT(tab.TABLE_SCHEMA,'.',col.table_name)
FROM
information_schema.TABLES tab
LEFT JOIN information_schema.COLUMNS col ON col.table_name = tab.table_name
WHERE
table_type = 'BASE TABLE'
AND col.column_name = 'client_id';
-- 当循环结束后,就把全局变量done设置为true
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
-- 设置更新的值
SET clientId = 'bankdev';
-- 打开游标
OPEN cursor_name;
my_loop:LOOP

-- 游标当前指向的一条数据赋值给tableName
FETCH cursor_name INTO tableName;
-- 修改表的数据的sql
SET sqls = CONCAT( ' update ', tableName, ' set client_id = "',clientId,'"');
-- 把要执行的sql语句赋值给@a变量
SET @a = sqls;
-- 预处理语句
PREPARE stmt1 FROM @a;
-- 执行预处理语句
EXECUTE stmt1;
-- 删除预处理语句
DEALLOCATE PREPARE stmt1;
-- 每次检查done变量,如果为true,就跳出循环
IF done THEN LEAVE my_loop;
END IF;
-- 结束循环
END LOOP;
-- 关闭游标
CLOSE cursor_name;
END

 2、执行存储过程 

call proc_update_client_id()

3、删除存储过程
drop procedure proc_update_client_id;

  

修改mysql多个表的相同字段为同一值内容的更多相关文章

  1. mysql中大数据表alter增加字段报错:"1034 Incorrect key file for table 'table_name'; try to repair it"

    mysql中大数据表alter增加字段报错:"1034 Incorrect key file for table 'table_name'; try to repair it" 现 ...

  2. MySQL为数据表的指定字段插入数据

    username not null 没有默认值/有默认值   insert不插入username字段 均不报错 2014年07月23日21:05    百科369 MySQL为数据表的指定字段插入数据 ...

  3. MySQL获取Schema表名和字段信息

    MySQL获取Schema表名和字段信息 获取表名 select TABLE_NAME,TABLE_TYPE,ENGINE,TABLE_ROWS,TABLE_COMMENT,CREATE_TIME,U ...

  4. mysql下的将多个字段名的值复制到另一个字段名中(批量更新数据)字符串拼接cancat实战例子

    mysql下的将多个字段名的值复制到另一个字段名中(批量更新数据)mysql字符串拼接cancat实战例子: mysql update set 多个字段相加,如果是数字相加可以直接用+号(注:hund ...

  5. mysql修改表中某个字段的默认值

    Mysql中用SQL增加.删除字段,修改字段名.字段类型.注释,调整字段顺序总结   在网站重构中,通常会进行数据结构的修改,所以添加,删除,增加mysql表的字段是难免的,有时为了方便,还会增加修改 ...

  6. mysql数据库之表操作及字段约束条件

    目录 一.存储引擎 二.表介绍 三.创建表 四.查看表结构 五.数据类型 一.介绍 二.数值类型 整数类型 浮点型 三.字符串类型 四.日期类型 五.枚举类型与集合类型 六.约束条件 七.修改表 al ...

  7. mysql,user表中各字段的含义

    1.查询user表 select * from mysql.user 2.修改用户密码 ALTER user ' 3.user表中各字段的含义 Select_priv:用户可以通过SELECT命令选择 ...

  8. MySQL向数据库表的某字段追加数据

    使用CONCAT()函数 mysql向表中某字段后追加一段字符串(field为字段名): update table_name set field=CONCAT(field,'str',) mysql ...

  9. MySQL slow_log日志表出现非法字段值

    背景 从mysql.slow_log 获取慢查询日志很慢,该表是csv表,没有索引. 想添加索引来加速访问,而csv引擎不能添加索引(csv引擎存储是以逗号分割的文本来存储的),只能改存储引擎来添加索 ...

  10. Mysql查询数据库表结构以及字段类型并展示

    1.建表语句sys_user CREATE TABLE `sys_user` ( `id` varchar(32) NOT NULL COMMENT '编号', `dept_id` varchar(3 ...

随机推荐

  1. Vue props配置项(属性)

    功能:让组件接收外部传过来的数据 1.传递数据: <Demo name="XXX"/> 2.接收数据: (1)第一种方式(只接收): props:['name'] (2 ...

  2. 关于centos8yum源失效问题

    [CentOS8遇到错误]Error: Failed to download metadata for repo 'powertools'... 原因: CentOS Linux 8 已于 2021 ...

  3. django搭建简易blog

    目录 下载安装django 创建一个django项目 创建一个django应用 models.py urls.py views.py admin.py 配置应用到项目下 路由设置urls.py set ...

  4. 工作日统计工具(python)

    一.前言 最近在整理之前写过的工具,发现这个虽然写得很简单,但是现在回头看看还挺有趣,就放出来LOL 记得应该是因为当初写立项书的时候,总是得算10个工作日之后是几号,或者到几号结束还剩下多少个工作日 ...

  5. Java面向对象之抽象类abstract

    抽象类abstract 普通类 普通类可以直接产生实例化对象,并且在普通类之中可以包含有构造方法,普通方法.static 方法.常量.变量的内容. 所有的普通方法都会有一个"{}" ...

  6. 泛微OA技巧随记

    隐藏明细表的加号按钮,如果不想让用户手工添行,必须通过自动联动添明细行,可以将明细表的加号按钮隐藏. document.getElementById('$addbutton0$').style.dis ...

  7. 20200420关于mysql突然停止服务的记录

    期待评论ing... 前天开发商城项目的时候,没注意d盘满了,后来5.5的mysql就突然无法启动,而且提示2003错误,在cmd中启动也是没有任何报错信息. 然后就找5.5原因,在windows的, ...

  8. sqlite 数据更新

    1.整个库迁移(命令) https://blog.csdn.net/kevin_weijc/article/details/78920593 2.单个表数据导入(attach,在数据库中添加附加数据库 ...

  9. Java基础_字符串比较

    字符串之间的比较 compareTo "==" equals compareTo 示例: compareTo(string) compareToIgnoreCase(String) ...

  10. windows 系统进行升级之后,如何删除 Windows.old 文件夹。

    首先用鼠标右键点击 C 盘,在弹出的下拉列表里找到"属性"并点击它. 步骤阅读 2 在打开的 C 盘属性里的常规找到"磁盘清理",点击它打开. 步骤阅读 3 这 ...