【Mysql】更新脚本SQL——新增删除修改字段

 -- 新增字段 
DROP PROCEDURE IF EXISTS schema_change;  
DELIMITER //
CREATE PROCEDURE schema_change()
BEGIN
DECLARE CurrentDatabase VARCHAR (100) ; SELECT DATABASE () INTO CurrentDatabase ;

IF NOT EXISTS (
	SELECT
		*
	FROM
		information_schema.COLUMNS
	WHERE
		table_schema = CurrentDatabase
		AND table_name = '你的表名'
		AND column_name = '你要新增的字段名称'
) THEN
    -- 这句话可以在数据库可视化编辑器操作后从历史记录中获取,把后面的 after 某某字段删除
	ALTER TABLE `你的表名` 
	ADD COLUMN `你要新增的字段名称` longtext NULL COMMENT '字段备注';
	-- 这句话可以在数据库可视化编辑器操作后从历史记录中获取,把后面的 after 某某字段删除
	-- 注意最后分号; 一定要记得写 
END IF;
END//  
DELIMITER ;
CALL schema_change();

-- 删除字段
DROP PROCEDURE IF EXISTS schema_change;  
DELIMITER //
CREATE PROCEDURE schema_change ()
BEGIN
DECLARE CurrentDatabase VARCHAR (100) ; SELECT DATABASE () INTO CurrentDatabase ;
IF EXISTS (
	SELECT
		*
	FROM
		information_schema. COLUMNS
	WHERE
		table_schema = CurrentDatabase
	AND table_name = '表名'
	AND column_name = '字段名称'
) THEN
	ALTER TABLE `表名` DROP COLUMN `字段名称`;
END
IF;
END//  
DELIMITER ;

CALL schema_change ();

新增字段要判断 不存在 IF NOT EXISTS
删除字段和修改字段要判断存在 IF EXISTS
重要的是 THEN 后面的语句 在数据库可视化编辑器操作后从历史记录中获取,当然也可以自己写。修改也一样(不管是字段属性名称还是备注还是属性),判断存在后在THEN后操作。
别忘记最后的分号!
别忘记最后的分号!
别忘记最后的分号!

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值