首页 > 数据库技术 > 详细

Mysql 判断表或字段是否存在新增/修改表结构可重复执行sql

时间:2020-07-06 16:16:22      阅读:299      评论:0      收藏:0      [点我收藏+]
DROP PROCEDURE
IF EXISTS proc_tempPro;

CREATE PROCEDURE proc_tempPro ()
BEGIN

START TRANSACTION;

	-- 学生表
	DROP TABLE IF EXISTS student;
	CREATE TABLE student (
	id bigint(20) NOT NULL AUTO_INCREMENT ,
	name varchar(40) DEFAULT NULL ,
	xb varchar(40) DEFAULT NULL ,
	age int(3) DEFAULT NULL ,
	birthday datetime DEFAULT NULL ,
	className varchar(80) DEFAULT NULL ,
	PRIMARY KEY (id)
	) ENGINE=InnoDB DEFAULT CHARSET=utf8;

	-- 学生表新增班级字段
	SELECT
		count(*) INTO @count
	FROM
		information_schema. COLUMNS
	WHERE
		table_schema = DATABASE ()
	AND column_name = ‘className‘
	AND table_name = ‘student‘;

	IF (@count < 1) THEN
		ALTER TABLE student ADD className VARCHAR(40);
	ELSE 
		ALTER TABLE student MODIFY COLUMN className VARCHAR(20);
		
	END IF;
	

END;

CALL proc_tempPro;

DROP PROCEDURE
IF EXISTS proc_tempPro;

  

Mysql 判断表或字段是否存在新增/修改表结构可重复执行sql

原文:https://www.cnblogs.com/Big-Boss/p/13255093.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!