数据库表添加新字段(支持重复执行)

Oracle

DECLARE
    COLEXIST NUMBER;
BEGIN
   SELECT COUNT(1) INTO COLEXIST FROM USER_TAB_COLUMNS WHERE TABLE_NAME=UPPER(‘HISTORY‘) AND COLUMN_NAME=UPPER(‘NAME‘);--判断列是否存在
   IF COLEXIST = 0  THEN  --如果不存在,进行创建
      EXECUTE IMMEDIATE
              ‘ALTER TABLE HISTORY ADD NAME VARCHAR(64) DEFAULT (‘‘ ‘‘) NOT NULL‘;
    END IF ;
END;
/  

Mysql

DELIMITER ;;
DROP PROCEDURE IF EXISTS COLUMNADD;
CREATE DEFINER=`root`@`%` PROCEDURE `COLUMNADD`(TBNAME VARCHAR(30),COLNAME VARCHAR(32),COLTYPE VARCHAR(64))
BEGIN
DECLARE  P_STR VARCHAR(300);
IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=DATABASE() AND TABLE_NAME = TBNAME AND COLUMN_NAME =COLNAME) THEN  -- 判断列是否存在
   SET P_STR= CONCAT(‘ALTER TABLE ‘,TBNAME,‘ ADD ‘,COLNAME ,‘ ‘,COLTYPE);
   SET @SQL = P_STR;
   PREPARE STMT FROM @SQL;
   EXECUTE STMT;
   DEALLOCATE PREPARE STMT;
END IF;
END;;
DELIMITER ;

-- 调用该存储过程
CALL COLUMNADD(‘LF_WCD_P1‘,‘WCD_URLP1‘,‘VARCHAR(64) NOT NULL DEFAULT ‘‘‘‘‘);

原文地址:https://www.cnblogs.com/kiko2014551511/p/11751408.html

时间: 2024-07-31 20:58:57

数据库表添加新字段(支持重复执行)的相关文章

MySql数据库在表中添加新字段,设置主键,设置外键,字段移动位置,以及修改数据库后如何进行部署和维护的总结

1,为当前已有的表添加新的字段 alter table student add studentName varchar(20) not null; 2,为当前已有的表中的字段设置为主键自增 alter table student add constraint PK_studentId primaryKey(studentId); 3,为当前已有的表中的字段设置为外键 alter table student add constraint FK_teacherId_studentInfo forei

ASP.NET MVC 5 - 给电影表和模型添加新字段

原文:ASP.NET MVC 5 - 给电影表和模型添加新字段 在本节中,您将使用Entity Framework Code First来实现模型类上的操作.从而使得这些操作和变更,可以应用到数据库中. 默认情况下,就像您在之前的教程中所作的那样,使用 Entity Framework Code First自动创建一个数据库,Code First为数据库所添加的表,将帮助您跟踪数据库是否和从它生成的模型类是同步的.如果他们不是同步的,Entity Framework将抛出一个错误.这非常方便的在

Asp.Net MVC4入门指南(7):给电影表和模型添加新字段

在本节中,您将使用Entity Framework Code First来实现模型类上的操作.从而使得这些操作和变更,可以应用到数据库中. 默认情况下,就像您在之前的教程中所作的那样,使用 Entity Framework Code First自动创建一个数据库,Code First为数据库所添加的表,将帮助您跟踪数据库是否和从它生成的模型类是同步的.如果他们不是同步的,Entity Framework将抛出一个错误.这非常方便的在开发时就可以发现错误,否则您可能会在运行时才发现这个问题. (由

Localdb数据库添加新字段 迁移过程

您将使用实体框架代码第一次迁移迁移到模型类的一些变化,所以该更改应用于数据库 1.在App-data文件夹中的Movies.mdf文件上点击鼠标右键并选择删除来删除电影数据库 2.从工具菜单上,单击库程序包管理器,然后程序包管理器控制台. 在程序包管理器控制台窗口中 PM>提示输入 -ContextTypeName MvcMovie.Models.MovieDBContext 然后点击回车. MvcMovie是项目的名字 3.在新的迁移文件夹rationsMig中创建一个Configuratio

sql语句查询同一表内多字段同时重复的记录 sql数据库重复记录删除

分享下用sql语句删除数据库中重复记录的方法.比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来select p1.* from persons p1,persons p2 where p1.id<>p2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address = p2.address可以实现上述效果.几个删除重复记录的SQL语句 1.用rowid方法2.用gr

学习ASP.NET Core Razor 编程系列十——添加新字段

学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET Core Razor 编程系列三——创建数据表及创建项目基本页面 学习ASP.NET Core Razor 编程系列四——Asp.Net Core Razor列表模板页面 学习ASP.NET Core Razor 编程系列五——Asp.Net Core Razor新建模板页面 学习ASP.NET C

ASP获取数据库表名,字段名以及对字段的一些操作

最近,在ASP论坛上看到很多网友问怎么获取数据库表名,字段名以及如何对字段进行删除,增添的操作故写此文. 本人对SQLServer比较熟一些,故以SQLServer为列: <% SET Conn=Server.CreateObject("ADODB.Connection") Conn.Open "Server=IP地址;Provider=sqloledb;Database=库名称;UID=用户名;PWD=密码;" %> 读SqlServer库中的表名:

【半转贴】解决SQL SERVER 2008数据库表中修改字段后不能保存

SQL SERVER 2008数据库表中修改字段后不能保存,这种情况将阻止保存要求重新创建表的更改一项的钩钩去掉就OK了 找到工具>选项>Designers>表设计器和数据库设计器 然后将“阻止保存要求重新创建表的更改” 的这一项的钩钩去掉就OK了 图片来自:http://www.jb51.net/article/42727.htm 刚好碰到这个问题,用的就是上面的方法解决的 [半转贴]解决SQL SERVER 2008数据库表中修改字段后不能保存

ASP.NET MVC4 新手入门教程之七 ---7.向电影模式和表中添加新字段

在这一节中,您将使用实体框架代码第一次迁移,迁移到模型类的一些变化,所以该更改应用于数据库. 默认情况下,当您使用实体框架代码优先将自动创建一个数据库,像你那样早些时候在本教程中,代码第一次添加一个表格到数据库,以帮助跟踪数据库的架构是否与它从生成的模型类同步.如果他们不同步,实体框架将引发错误.这使得更容易地在开发时可能发现否则只 (通过模糊错误) 在运行时跟踪问题. 设置代码第一次迁移模型更改 如果您使用的 Visual Studio 2012,双击解决方案资源管理器打开数据库工具中的Mov