1 创建存储过程 batchAddField:给所有"MyDB_"开头的数据库添加新字段
-- ----------------------------
-- Procedure structure for batchAddField
-- ----------------------------
DROP PROCEDURE IF EXISTS `batchAddField`;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `batchAddField`(IN `tableName` varchar(100),IN `fieldName` varchar(100),IN `fieldType` varchar(100),IN `defaultValue` varchar(1000))
BEGIN
#数据库名称
DECLARE schemaName VARCHAR(100);
#声明结束标识
DECLARE end_flag int DEFAULT 0;
#声明游标 curosr ,查找所有“MyDB_”开头的数据库
DECLARE curosr CURSOR FOR select TABLE_SCHEMA from information_schema.`TABLES` WHERE TABLE_SCHEMA like 'MyDB_%' and table_name = tableName;
#设置终止标志
DECLARE CONTINUE HANDLER FOR NOT FOUND SET end_flag=1;
#打开游标
OPEN curosr;
#遍历游标
loop_label: LOOP
FETCH curosr INTO schemaName;#获取当前游标指针记录,取出值赋给自定义的变量
IF end_flag > 0 THEN
LEAVE loop_label;
END IF;
SET @sqlStr=CONCAT('alter table ',schemaName,'.',tableName,' add column `',fieldName,'` ',fieldType,' DEFAULT ''',defaultValue,''' ');
PREPARE stmt from @sqlStr;
EXECUTE stmt;
END LOOP;
#关闭游标
close curosr;
END
;;
DELIMITER ;
2 调用存储过程:
batchAddField('Users','score','int(8)','0') //添加int型字段score默认值:0
batchAddField('Users','memo','varchar(1000)','blank') //添加varchar型字段memo默认值:blank
MySql存储过程批量删除多个数据库中同名表中的指定字段
1. 创建存储过程batchDeleteField:删除所有名称为"MyDB_"开头的数据库中的指定字段 -- ---------------------------- -- Pr ...
Java—JDBC向mysql数据库中给某个表添加数据时,会遇到的问题,如下
解析(jar包该放在那里,以及其它的操作): 把jar包(驱动)添加到自己的项目中,最好新建一个文件夹,再把jar包(驱动包)添加到这个所新建的文件中 1.先建好自己的项目,再新建一个文件夹,如下: ...
sql语句,数据库中,同表添加,主键不同,数据相同。
insert into tablename(各个字段名) select #新主键值,其他字段名 from tablename where No = #表中主键值
mysql 数据库中的每张表加同一个字段(避免重复加)
DROP PROCEDURE IF EXISTS testEndHandle; DELIMITER $$ CREATE PROCEDURE testEndHandle() BEGIN DECLARE ...
#mysql查询特定数据库中的所有表名
#mysql查询特定数据库中的所有表名select table_namefrom information_schema.tableswhere table_schema='smbms' and tab ...
孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成
孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天经过反复折腾,最终基本上算 ...
孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数
孤荷凌寒自学python第四十七天通用跨数据库同一数据库中复制数据表函数 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天打算完成的是通用的(至少目 ...
转:怎么用Sql语句获取一个数据库中的所有表的名字
用sql获取数据库中所有的表名的方法:1.oracle下:select table_name from all_tables;2.MySQL下:select table_name from infor ...
SQLSERVER如何获取一个数据库中的所有表的名称、一个表中所有字段的名称
1.查询数据库中的所有数据库名: SELECT Name FROM Master..SysDatabases ORDER BY Name 2.查询某个数据库中所有的表名: SELECT Name FR ...
随机推荐
iOS开发之开源项目链接
1. Coding iOS 客户端 Coding官方客户端. 笔者强烈推荐的值得学习的完整APP.GitHub - Coding/Coding-iOS: Coding iOS 客户端源代码 2. OS ...
真~让IE8支持background: rbga; ,IE8下兼容rgba颜色的半透明背景
IE8下兼容rgba颜色的半透明背景 这样的标题在百度和google搜索下很多篇文章,讲解IE8下兼容rgba的. 这些文章全部都是使用IE下的filter来使元素透明,但是这个里面会有bug. 它们 ...
RDBMS架构的开源DW/DSS引擎列表
因为笔者早期以oracle为主要RDBMS进行设计和优化,所以几乎即使单表超过5000w,多张超过300万以上的表做任意复杂的统计和风控计算都没出过性能问题.如今全面mysql为主线或者说open s ...
android 自定义AlertDialog(一段)
java: final AlertDialog dialog = new AlertDialog.Builder(mContext) .create(); dialog.setCancelable(f ...
CMDB资产采集
Agent(方式) 1:服务器每台都需要安装Agent 达到采集速度快,简单:造成性能损耗 获取每台服务器的资产并有返回值:v=subprocess.getoutput('dir')或者ipconfi ...
python之路7-正则表达式
正则表达式用于做字符串匹配,在python中用re模块来操作 生成正则的在线工具:http://tool.chinaz.com/regex
魔力Python--斐波那契数列(全)
1. 斐波那契数列应用广泛,对此数列的更好理解有助于我们算法的更进一步,并降低程序的时间复杂度,提高运行效率. 2. 斐波那契数列的应用(4种): 2.1 排列组合----经典例子:爬楼梯 " ...
AliOS-Things ESP8266 编译下载
首先:环境搭建,可以参照https://github.com/alibaba/AliOS-Things/wiki/Quick-Start.zh:我采用的是linux系统: 其次:一般项目文件夹放置在A ...
P2765 魔术球问题
P2765 魔术球问题 贪心模拟就可以过.........好像和dinic没啥关系 找找规律发现可以贪心放.n又灰常小. 设答案=m 你可以$O(mn)$直接模拟过去 闲的慌得话可以像我用个$se ...
WinForm画网格并填充颜色