mysql 增加字段脚本,以及删除主键约束的脚本,存储过程
//增加一个库下面所有表的row_id和其他9个字段的存过 DELIMITER $$ USE `erptest`$$ DROP PROCEDURE IF EXISTS `UPTABLE`$$ CREATE DEFINER=`root`@`localhost` PROCEDURE `UPTABLE`()
BEGIN
declare _tableName varchar(50);
declare _done int default 0;
declare _cur cursor for
select table_name from information_schema.`COLUMNS` where table_schema = 'erptest'(库名) group by table_name;
declare continue handler for sqlstate '02000' set _done=1;
open _cur;
repeat
fetch _cur into _tableName;
if not _done then
begin
if not exists(select * from information_schema.`COLUMNS` where table_schema = 'erptest' and table_name = _tableName and column_name='EXT_Row_Id')then
set @stmt := concat("alter table ",_tableName,"
add EXT_Row_Id varchar(32) primary key not null comment '主键,不为空',
add EXT_Date_Time datetime comment '时间戳 YYYY-MM-DD HH:MM:SS',
add EXT_Ogg_Seq bigint not null comment '自增序列',
add EXT_flag varchar(10) comment '操作标识',
add EXT_Src_System varchar(100) not null comment '来源系统',
add EXT_Valid_Flag varchar(1) default '1' not null comment '有效标识',
add EXT_Provincial_Flag varchar(5) comment '来源单位',
add EXT_Reserve1 varchar(100) comment '预留字段1',
add EXT_Reserve2 varchar(100) comment '预留字段2',
add EXT_Reserve3 varchar(100) comment '预留字段3';");
prepare stmt from @stmt;
execute stmt;
end if;
end;
end if;
until _done end repeat;
close _cur;
set _done = 0;
END$$ DELIMITER ; //删除一个mysql库下面所有有主键的表中的主键存过 DELIMITER $$ USE `erptest`$$ DROP PROCEDURE IF EXISTS `dropkey`$$ CREATE DEFINER=`root`@`localhost` PROCEDURE `dropkey`()
BEGIN
declare _tableName varchar(50);
declare _done int default 0;
declare _cur cursor for
select table_name from information_schema.`KEY_COLUMN_USAGE` where table_schema = 'erptest' group by table_name;
declare continue handler for sqlstate '02000' set _done=1;
open _cur;
repeat
fetch _cur into _tableName;
if not _done then
begin
set @stmt := concat("alter table ",_tableName," drop primary key;");
prepare stmt from @stmt;
execute stmt;
end;
end if;
until _done end repeat;
close _cur;
set _done = 0;
END$$ DELIMITER ;
mysql 增加字段脚本,以及删除主键约束的脚本,存储过程的更多相关文章
- Oracle删除主键约束的同时删除索引
继续昨天的折腾(Oracle修改主键约束),删掉主键约束后,发现唯一索引并未删掉.仔细看了下,主键约束跟唯一索引名称不一样,这说明是先创建了唯一索引,后创建的主键约束.我们来试验下: SQL> ...
- MySQL基础2-创建表和主键约束
1.创建表 在操作数据表之前,应该使用"USE 数据库名"指定操作是在哪个数据库中进行 主键约束(唯一标识) ****非空*** ****唯一*** ****被引用****(学习外 ...
- sql server删除主键约束所想到的
从网上找到了下面一段代码: declare @Pk varchar(100);select @Pk=Name from sysobjects where Parent_Obj=OBJECT_ID('表 ...
- sqlserver 2014 删除主键约束
truncate table menu SELECT * FROM sys.foreign_keys WHERE referenced_object_id=OBJECT_ID('menu'); --找 ...
- db2数据库创建删除主键约束和创建删除唯一键约束
创建.删除唯一约束: db2 "alter table tabname add unique(colname)" db2 "alter table tabname dro ...
- 【数据库_Mysql】MySQL—修改表时给表添加联合主键约束
添加语法如下: “ALTER TABLE table_name ADD CONSTRAINT pk_table_name PRIMARY KEY(列名1,列名2):” [示例1]假设订房信息表(O ...
- 主键约束 primary key
主键的作用: 可以唯一标识 一条数据,每张表里面只能有一个主键,.主键特性: 非空且唯一.当表里没有主键的时,第一个出现的非空且为唯一的列,被当成主键. 例子:create table tb3( ...
- Constraint1:主键约束,唯一性约束和唯一索引
1,主键约束创建索引 作为Primay Key的列是唯一的,非空的,Sql Server在创建主键约束时,自动为主键列创建一个唯一索引,并且索引列不允许为null. create table dbo. ...
- MySql增加字段、删除字段、修改字段
MySql增加字段.删除字段.修改字段名称.修改字段类型 1.增加一个字段 alter table user add COLUMN new1 VARCHAR(20) DEFAULT NULL; / ...
随机推荐
- UVA11624_Fire!
在一个矩形方阵里面,一个人要从一个位置走向另一个位置,其中某些地方有火源,每过一分钟,火源就会点燃相邻的点,同时相邻的点也变成了火源.人不能通过有火的点.问一个人能够安全地走到目的地去?最短时间多少? ...
- HDU4240_Route Redundancy
题目很简单.给一个有向图,求两点间的最大流量与任意一条路中的最大流量的比值. 最大流不说了,求出单条流量最大的路径可以用类似Spfa的方法来搞,保存到达当前点的最大流量,一直往下更新即可. 召唤代码君 ...
- CIR,CBS,EBS,PIR,PBS傻傻分不清楚?看这里!—-揭秘令牌桶
概述 春暖花开的时候,大家都开着汽车外出旅游欣赏美丽的风景,却被堵在高速公路上,你是否为此感到痛苦?但如果有一种机制可以评估高速公路上的车流量.控制车流情况,确保进入高速公路的汽车都能在路上安全畅行, ...
- P3119 [USACO15JAN]草鉴定Grass Cownoisseur
题目描述 In an effort to better manage the grazing patterns of his cows, Farmer John has installed one-w ...
- 【题解】玲珑杯河南专场17B
容斥大法妙~其实网上很多的题解虽然给出了容斥系数,但是并没有说明为什么是这个样子的.在这里解释一下好了. 考虑用容斥,实际上就是让 \(ans = \sum_{T\subseteq S}^{\ }f_ ...
- attention、self-attention、transformer和bert模型基本原理简述笔记
attention 以google神经机器翻译(NMT)为例 无attention: encoder-decoder在无attention机制时,由encoder将输入序列转化为最后一层输出state ...
- Mybatis笔记六:Mybatis中SqlSessionFactoryBuilder/SqlSessionFactory/SqlSession/映射器实例的作用域(Scope)和生命周期
SqlSessionFactoryBuilder 这个类可以被实例化.使用和丢弃,一旦创建了 SqlSessionFactory,就不再需要它了.因此 SqlSessionFactoryBuilder ...
- SSM 小demo的盲点总结
日期Date和String之间的转换: 1. 全局转换器(推荐使用) 1. 创建类实现Converter接口,实现Convert方法 public class StringToDateConvert ...
- Java EE之JSP
1.使用JSP的原因 编写Servlet代码的时候,向响应中输出HTML文档是非常不方便的. PrintWriter writer = response.getWriter(); writer.app ...
- 解题:USACO18FEB Taming the Herd
题面 从零开始的DP学习系列之贰(我的DP真的就这么烂TAT) 设DP状态的另一个技巧,考虑题目中有关答案的各种信息 然后这种和结尾有关系的$dp$可以考虑向前找结尾来转移 设$dp[i][j]$表示 ...