zoukankan      html  css  js  c++  java
  • Mysql 判断表或字段是否存在新增/修改表结构可重复执行sql

    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;
    

      

  • 相关阅读:
    数据库部署
    css常见问题
    extjs记录
    C#相关问题
    window疑难问题解决
    常用linq
    不同数据库之间的相互链接
    聊天数据库
    无线路由接入
    [转]如何才能让你的简历被谷歌相中
  • 原文地址:https://www.cnblogs.com/Big-Boss/p/13255093.html
Copyright © 2011-2022 走看看