作为一名.NET未入门的程序员,第一次发随笔。 

前不久参与写的公司业务程序,目前这个程序的后期维护修复漏洞工作由我来负责。由于业务关系重大,每一步对程序代码的操作都非常谨慎,一旦操作失误,造成的损失和用户影响都是巨大的和不易恢复的。

现在发现了一些不容易在目前程序中通过修补漏洞和代码来实现的业务逻辑,想了几个方案,最后还是决定在线上数据库中增加字段。和上级申请成功后,开始执行这个"危险的操作",但是数据库shi 做了分表的。

以前我对数据库的操作知识仅局限于 简单的直接执行一条SQL语句。

要完成这个为多个表增加字段的目的,靠手动添加的方式显然是不靠谱的。

上司告诉我可以在数据库中编程来实现,以前没有做过这种操作,只得查询了一些资料,才发现原来SQL语句中,进行编程来实现一些数据库的操作,并非是一件困难的事情。

经过测试没问题以后,并确保增加字段不会让线上庞大的数据挂掉后,开始在线上库进行增加字段操作。

以下是成功的代码,虽然很简单,但是第一次做这样的操作,内心小小的澎湃,纪念一下
/*
声明变量(DECLARE):C需要增加字段的表名后缀
分了51个表,从0开始到50
每次循环执行一个对新表的增加列的操作(EXEC)
*/
DECLARE @Order CHARACTER(20)
DECLARE @NUM INT
DECLARE @sql CHARACTER(500)
SET @NUM = 0
WHILE (@NUM < 51)
BEGIN
SET @Order = CONVERT(CHARACTER(10), @NUM)
SET @sql = 'ALTER TABLE dbo.Chapter_'+ @Order +' ADD CpVolumeID varchar(36)'
EXEC(@sql)
SET @NUM = @NUM + 1
END
简单的几行代码就实现了对数据库51个表增加新字段的操作,以后在数据库中的编程可以多研究了,很有趣。

最新文章

  1. 简单好记的Jdk 环境变量配置
  2. Django 发布时间格式化
  3. 使用JSON的数据格式
  4. 【web性能】 JS、CSS的合并、压缩、缓存管理
  5. Flex SuperTabNavigator Tab标签图片不显示或图片显示不完全
  6. PHP面向对象之旅:模板模式(转)
  7. 精美实用的jQuery插件精选
  8. squid服务搭建
  9. 转 : 如何用sys as sysdba权限连接数据库进行EXP/IMP
  10. MySQL 存储表情字符
  11. 《Unity3D/2D游戏开发从0到1(第二版本)》 书稿完结总结
  12. python 模块的概念介绍
  13. IT轮子系列(一)——DropDownList 的绑定(二)
  14. ios和android 浏览器适配问题总结
  15. kolla queens on centos7.5 -all in one
  16. 使用Openssl的AES加密算法
  17. idea 换主题
  18. WebDriverAPI(6)
  19. 【LG3295】[SCOI2016]萌萌哒
  20. vue中的数据双向绑定

热门文章

  1. libcurl 安装使用一
  2. ubuntu 修改主机名
  3. UISwitch swift
  4. apache-activemq-5.14.0学习总结
  5. Java内部实现的观察者模式小记
  6. 在C#中使用GDAL创建Shape文件
  7. SVN--(Eclipse)在历史记录中比较版本差异
  8. NENU_CS_segment_tree
  9. 2014 ACM/ICPC Asia Regional Shanghai Online
  10. TGL站长关于常见问题的回复