数据库操作--批量修改数据库表名及字段名大小写转换及首字母大写+删除没有数据无用的表...
1、修改表名为小写
declare @sql varchar(300)--,@rowcount varchar(10),@dyncnum int
declare @tablename varchar(100)
declare cursor1 cursor for
select name from sysobjects where xtype = 'u' order by name
open cursor1
fetch next from cursor1 into @tablename
while @@fetch_status=0
begin
set @sql='sp_rename '''+@tablename+''','''+LOWER(@tablename)+''''
print @sql
exec(@sql)
fetch next from cursor1 into @tablename
end
close cursor1
deallocate cursor1
2、修改数据库中所用字段名为小写
declare @sql varchar(300)
declare @tablecolumnname varchar(100), @columnname varchar(100)
declare cursor1 cursor for
select b.name+'.['+a.name+']',a.name from syscolumns a ,sysobjects b where a.id = object_id(b.name) and b.xtype = 'u' and a.xtype <>189 and a.xtype <>34 and a.xtype <>35 and a.xtype <>36
open cursor1
fetch next from cursor1 into @tablecolumnname,@columnname
while @@fetch_status=0
begin
set @sql='sp_rename '''+@tablecolumnname+''','''+LOWER(@columnname)+''',''column'''
--print @sql
exec(@sql)
fetch next from cursor1 into @tablecolumnname,@columnname
end
close cursor1
deallocate cursor1
注:转为大写的表名及字段名将LOWER改为UPPER即可
3、修改表名及字段名为首字母大写
declare @tablename varchar(50)
declare @columnname varchar(50)
declare cur_table cursor for
select name from sysobjects where type='U'
open cur_table
fetch next from cur_table into @tablename
while @@fetch_status=0
begin
-----------------------------------------
declare cur_column cursor for
select name from syscolumns where id=Object_Id(@tablename)
open cur_column
fetch next from cur_column into @columnname
while @@fetch_status=0
begin
declare @ch varchar(50),@ch1 varchar(50),@uppertablename varchar(50)
set @ch=@tablename+'.'+@columnname
set @ch1=upper(substring(@columnname,1,1))+substring(@columnname,2,len(@columnname)-1)
set @uppertablename=upper(substring(@tablename,1,1))+substring(@tablename,2,len(@tablename)-1)
exec sp_rename @tablename,@uppertablename
exec sp_rename @ch,@ch1,'column'
fetch next from cur_column into @columnname
end
close cur_column
deallocate cur_column
-----------------------------------------
fetch next from cur_table into @tablename
end
close cur_table
deallocate cur_table
4、删除没有数据的表
--统计用户表
create table #t(name varchar(255), rows bigint, reserved varchar(20), data varchar(20), index_size varchar(20), unused varchar(20))
exec sp_MSforeachtable "insert into #t exec sp_spaceused '?'"
select * from #t
--drop table #t
--删除表
DECLARE @Table NVARCHAR(30)
DECLARE tmpCur CURSOR FOR
select name from #t WHERE rows=0
OPEN tmpCur
FETCH NEXT FROM tmpCur INTO @Table
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE @sql VARCHAR(100)
SELECT @sql = 'drop table ' + @Table
EXEC(@sql)
FETCH NEXT FROM tmpCur INTO @Table
END
CLOSE tmpCur
DEALLOCATE tmpCur
转载于:https://www.cnblogs.com/lucybloguniquecom/p/5269008.html
数据库操作--批量修改数据库表名及字段名大小写转换及首字母大写+删除没有数据无用的表...相关推荐
- python数据库操作批量sql执行_利用Python如何批量修改数据库执行Sql文件
利用Python如何批量修改数据库执行Sql文件 来源:中文源码网 浏览: 次 日期:2018年9月2日 [下载文档: 利用Python如何批量修改数据库执行Sql文件.txt ] (友 ...
- php 批量修改表格数据,PHP批量修改数据库表前缀教程+代码
有时候需要批量修改数据库表前缀,最简单的方法就是一个表一个表的手动修改,但是非常浪费时间.这里为大家分享一段自用的利用PHP批量修改数据库表前缀的方法,亲测可用,下面上代码. PHP修改表前缀代码&l ...
- ASP获取数据库表名,字段名以及对字段的一些操作
最近,在ASP论坛上看到很多网友问怎么获取数据库表名,字段名以及如何对字段进行删除,增添的操作故写此文. 本人对SQLServer比较熟一些,故以SQLServer为列: <% ...
- 修改字段类型 Alter table 表名 modify 字段名 字段类型mysql数据库概念及入门语句...
1.数据库的概念 数据库(DataBase,DB)是一个长期存储在计算机内的.有组织的.有共享的.统一管理的数据集合.她是一个按数据结构来存储和管理数据的计算机软件系统.数据库的概念实际包括两层意思: ...
- 批量修改数据库,比如给数据库的某个表添加一个字段
批量修改数据库,比如添加一个字段,如下 SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'. tp_client ADD from_uid INT(11) NOT ...
- 数据库建表原则,SQL数据库建表前期优化,SQL数据库操作优化,数据库命名规范...
2019独角兽企业重金招聘Python工程师标准>>> 关键字: 数据库建表原则 ·1. 原始单据与实体之间的关系 可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关 ...
- 修改数据_如何批量修改数据库中的特定记录数据
大家好,今日我们继续VBA数据库解决方案的第30讲:如何批量修改数据库中的特定记记录数据.在上一讲中,我们讲了批量编辑数据的方案,用到的是UPDATE方法,今日我们仍用此方法解决删除特定记录.这些记录 ...
- pg数据库 设置不区分大小写_pg数据库表名、字段名大小写问题
问题描述: 使用pgAdmin新建了一个表user,添加了id.name.enScore三个字段.在user表中添加了几条记录后,使用select * from user:查询没有问题,会显示user ...
- SQL更改表名,数据库名,字段名
一.字段名 alter table 原表名 rename to 新表名: 如 二.更改字段名 alter table 表名 change 要修改的字段名 新字段名 新字段的数据类型:如: 三.更改数 ...
最新文章
- Data source rejected establishment of connection, message from server: Too many connections解决办法...
- python 爬虫实例 电影-Python爬虫教程-17-ajax爬取实例(豆瓣电影)
- Python学习---Python安装与基础1205
- Qt 编译出错 Could not create directory
- vbe6ext.olb不能被加载解决方案
- Spring Data ElasticSearch删除索引遇到的java.lang.IllegalStateException: Failed to load ApplicationContext异常
- 04-numpy-笔记-transpose
- form表单图片预览 layui_layui 实现图片上传和预览
- linux调用ocx插件_Wordpress file manager插件任意文件上传
- 商品WEB开发的商品定单与存储过程的应用
- TcaplusDB X 光与夜之恋,来谈一场高沉浸式的恋爱吧
- 怎么套dedecms(织梦cms)模板
- 阳明心学在敏捷开发中的应用
- 特拉华大学计算机科学怎么样,2020年特拉华大学排名TFE Times美国最佳计算机科学硕士专业排名第84...
- 知识图谱实体预测任务如何计算filtered MRR
- 唯品会技术架构一览表
- linux 10 -Bash Shell编程
- 如何批量将图片尺寸改成一样大?
- #define的用法
- 学习笔记7--车辆控制平台
热门文章
- Luck Competition
- 电脑主板接口_如何看电脑主板 M.2 接口是支持 SATA 还是 NVMe 固态硬盘?
- 计算机组成原理—读写周期与半导体只读存储器
- OpenGL基础39:GLSL内建变量与接口块
- [Python] 索引序列函数:enumerate() / enumerate(sequence, start=0)
- 全面认识openstack:OpenStack架构详解
- python机器学习库sklearn——支持向量机svm
- js系列教程7-DOM操作全解
- 贺利坚老师汇编课程74笔记:按下esc键改变显示颜色
- js 关系图插件_babel插件的相关知识