给数据库的多个表增加相同字段
Posted 鮀城小帅
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了给数据库的多个表增加相同字段相关的知识,希望对你有一定的参考价值。
DROP PROCEDURE IF EXISTS testEndHandle;
DELIMITER $$
CREATE PROCEDURE testEndHandle()
BEGIN
DECLARE s_tablename VARCHAR(100);
DECLARE cur_table_structure CURSOR
FOR
SELECT table_name
FROM INFORMATION_SCHEMA.TABLES
-- table_schema 是数据库名
WHERE table_schema = 'book' AND table_name LIKE "y_%";
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET s_tablename = NULL;
OPEN cur_table_structure;
FETCH cur_table_structure INTO s_tablename;
label:WHILE ( s_tablename IS NOT NULL) DO
-- SET @MyQuery=CONCAT("alter table `",s_tablename,"` add COLUMN `create_by` varchar(255) COMMENT '由谁创建'");
-- SET @MyQuery=CONCAT("alter table `",s_tablename,"` add COLUMN `create_time` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '添加时间_时间戳'");
-- SET @MyQuery=CONCAT("alter table `",s_tablename,"` add COLUMN `update_by` varchar(255) COMMENT '由谁修改'");
-- SET @MyQuery=CONCAT("alter table `",s_tablename,"` add COLUMN `update_time` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间_时间戳'");
-- SET @MyQuery=CONCAT("alter table `",s_tablename,"` modify COLUMN `update_time_stamp` datetime(0) COMMENT '修改时间_时间戳'");
SET @MyQuery=CONCAT("alter table `",s_tablename,"` add COLUMN `remark` varchar(255) COMMENT '更新备注'");
PREPARE msql FROM @MyQuery;
EXECUTE msql ;
FETCH cur_table_structure INTO s_tablename;
END WHILE label;
CLOSE cur_table_structure;
END;
CALL testEndHandle();
以上是关于给数据库的多个表增加相同字段的主要内容,如果未能解决你的问题,请参考以下文章
oracle怎么用一个表的多个字段数据更新另一个表相应的字段中