zoukankan      html  css  js  c++  java
  • mysql 修改表结构 判断并添加column 的 简单存储过程

    处理思路:
    1、查找表结构,判断要加入的列是否已存在
    2、如果不存在,则执行添加

    CREATE PROCEDURE `mysql_sp_add_column`(
      IN p_DBName varchar(64)        --数据库名
    , IN p_TableName varchar(100)    --表名
    , IN p_ColumnName varchar(100)   --字段名
    , IN p_ColumnType varchar(200)   --字段类型
    , IN p_ColumnOtherInfo varchar(200)  --字段其他属性
    )
        NOT DETERMINISTIC
        CONTAINS SQL
        SQL SECURITY DEFINER
        COMMENT ''
    BEGIN
       declare tmpColumnName varchar(100);
       declare tmpSqlStr varchar(500);
       declare tmpSqlToRun varchar(500);

    select column_name into tmpColumnName from information_schema.columns
           where table_name = p_TableName  and column_name = p_ColumnName ;


    if tmpColumnName  is null then
       set tmpSqlStr = " ";
       set tmpSqlStr = concat(tmpSqlStr ,"  ALTER TABLE " , p_TableName);
       set tmpSqlStr = concat(tmpSqlStr ," ADD ", p_ColumnName, " "  ,p_ColumnType , " "  ,p_ColumnOtherInfo , " ; " );
       SET @sql = tmpSqlStr;

     prepare tmpSqlToRun from @sql;
     EXECUTE tmpSqlToRun;

    end if;

    END;

  • 相关阅读:
    9
    8
    7
    lua开发和调试环境
    MeshFilter mesh vs sharedMesh
    几种方法验证unity是否为development build
    Unity SetActive Event
    利用Data Vault对数据仓库进行建模(二)
    程序员如何圆飞行梦想(一)
    利用Data vault对数据仓库建模
  • 原文地址:https://www.cnblogs.com/freeliver54/p/1851618.html
Copyright © 2011-2022 走看看