`
xqf222
  • 浏览: 124899 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

SQL批量删除指定数据表中的所有字段说明属性

 
阅读更多

--SQL批量删除指定数据表中的所有字段说明属性

--现象:执行select * from sys.extended_properties where value is null;显示出多条记录类似于[1OBJECT_OR_COLUMN23720691MS_DescriptionNULL]
--操作:执行delete from sys.extended_properties where value is null;提示[不允许对系统目录进行即席更新]
--功能说明:因为错误的操作将到了字段描述为NULL添加到系统数据表sys.extended_properties中,最终需要批量删除掉后再添加字段描述

declare @TableName nvarchar(250)--定义当前操作的数据表名变量
set @TableName='user'--指定要查询的数据表名称(此处的数据表名user需要更新为你的数据库中的已有数据表名)

declare @ColumnName nvarchar(250)--游标中的当前查询的字段名称
declare @ColumnDescription nvarchar (250)--游标中的当前查询的字段说明

--声明读取数据表中所有字段说明的游标
declare mycursor cursor for select a.name,CAST(g.value AS nvarchar) from sys.columns a left join sys.extended_properties g on (a.object_id = g.major_id AND a.column_id=g.minor_id) where object_id=OBJECT_ID(''+@TableName+'') order by object_id,a.column_id
--打开游标
open mycursor
--从游标里取出数据赋值到约束名称变量中
fetch next from mycursor into @ColumnName,@ColumnDescription
--如果游标执行成功
while (@@fetch_status=0)
begin
if(@ColumnDescription is null)
begin
print '当前数据表['+@TableName+']字段['+@ColumnName+']对应的说明为空'

--删除字段的描述属性值为NULL的记录
--EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table','数据表名称', 'column','字段名称'
EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table',@TableName,'column',@ColumnName

end
else
begin
--查询当前找到的字段说明
print '当前数据表['+@TableName+']字段['+@ColumnName+']对应的说明是['+@ColumnDescription+']'
end

--用游标去取下一条记录
fetch next from mycursor into @ColumnName,@ColumnDescription
end
--关闭游标
close mycursor
--撤销游标
deallocate mycursor

分享到:
评论

相关推荐

    SQL批量删除表中指定字段对应的所有约束

    SQL批量删除数据表中指定字段对应的所有约束

    arcgis小技巧字段内属性提取

    通过对ArcGIS中的字段属性提取技巧的学习和实践,我们可以更加高效地处理地理空间数据,从而更好地支持各类地理信息系统项目的开发与实施。无论是基础的数据整理还是高级的数据分析,掌握这些小技巧都将为日常工作...

    ArcEngine 属性表操作

    `IQueryFilter.SortFields`属性可以添加多个排序字段,每个字段可以指定升序或降序排列。此外,还可以使用`ITable.CreateRowCursor`方法创建可排序的游标,通过设置`SortField`和`SortOrder`参数进行排序。 3. **...

    达梦数据库_SQL语言手册

    达梦数据库_SQL语言手册.pdf 数据库快照定义语句 数据库快照删除语句 第章数据查询语句和全文检索语句 单表查询 简单查询 带条件查询 集函数 情况表达式 连接查询 子查询 标量子查询 表子查询 派生表子...

    数据库建表操作SQL语句大全

    从表中删除一个字段,使用`ALTER TABLE`与`DROP COLUMN`结合使用。 **语法示例**: ```sql ALTER TABLE [表名] DROP COLUMN [字段名]; ``` **解释**: - **表名**:要删除字段的表的名称。 - **字段名**:要删除...

    数据字典和数据表的读取.doc

    在创建数据表时,需要进入“Technical Settings”设置字段属性,如长度、精度、是否可为空等。 3. **激活数据表**: 定义完成后,必须点击激活按钮(通常在屏幕左侧第六个按钮)以使更改生效。 4. **数据维护**...

    SQL学习笔记+记录sql各种应用

    1. 数据库与表:SQL中的数据库是由一个或多个表组成的集合,表由行和列构成,每一行代表一条记录,每一列代表一个特定的属性。例如,员工表可能包含员工ID、姓名、部门和薪水等字段。 2. 数据类型:SQL支持多种数据...

    Delphi使用sql代码插入数据行,空白行,删除行,修改行等操作.rar

    对于多条SQL语句的操作,如批量插入、更新或删除,可以使用事务以确保数据一致性。在Delphi中,可以通过TADOConnection的BeginTransaction、CommitTransaction和RollbackTransaction方法进行事务控制。 6. **错误...

    实验五 SQL语言数据操纵语言DML.docx

    DELETE语句可以删除满足特定条件的记录,若不提供WHERE子句,将删除表中的所有记录。需要注意的是,删除操作不可逆,除非在事务处理中使用了ROLLBACK。 实验中,学生将使用Navicat for MySQL工具进行实践操作,这...

    arcgis属性表利用python自动编码

    有时我们需要对属性表中的某列进行编码,例如根据其他字段的值来生成唯一的顺序编号。这在数据分析、数据整理以及制图过程中非常有用。 #### 关键知识点详解 ##### 1. ArcPy模块简介 - **ArcPy**是Esri为ArcGIS...

    sqlserver.rar

    2. DELETE语句:用于删除表中的记录,可以是单个记录,也可以根据条件批量删除。 五、索引与视图 1. 索引:提高查询速度的关键。包括唯一索引、非唯一索引、聚集索引和非聚集索引,了解它们的原理和应用场景。 2....

    mysql基本语法,增删改查大全总结,以及常用的sql语句总结

    - **查询当前数据库的所有表**: ```sql SHOW TABLES; ``` - **查看指定表结构**: ```sql DESC 表名; ``` - **查询指定表的建表语句**: ```sql SHOW CREATE TABLE 表名; ``` - **创建表结构**: ```sql ...

    arcengine属性表操作代码

    在ArcEngine中,属性表(Attribute Table)是地理信息系统(GIS)中不可或缺的一部分,它用于存储和管理地理数据的相关属性信息。属性表操作是开发GIS应用程序时经常遇到的任务,涉及地图数据的查询、分析和更新。...

    SQLServer高频面试题及答案

    drop操作可以删除整个表或索引,truncate操作可以删除表中的所有数据,delete操作可以删除指定的数据记录。 11. 什么是临时表? 临时表是一种特殊的表,它们的生命周期只在当前会话中有效。临时表可以用来临时存储...

    SQL语言全部精讲PPT

    - 基本查询:学习如何使用SELECT语句获取单个或多个字段的数据,以及如何使用FROM子句指定数据来源。 - 条件查询:掌握WHERE子句,用于过滤满足特定条件的记录,例如使用比较运算符(=、<、>等)和逻辑运算符(AND...

    sqlserver 与 oracle 的配置

    - **删除数据**:移除表中的数据。 - **表类型**:设置表为业务表或系统表。 - **复合表定义**:定义复合表结构。 - **生成字段串**:创建字段序列。 - **自动生成字段**:快速生成表的默认字段。 4. **字段...

    SQL语句详细介绍 下

    使用TRUNCATE TABLE语句则会迅速删除表中所有数据,但不记录具体删除操作,适用于快速清空表。 4. **INSERT INTO语句**:用于向数据库表中插入数据。你可以一次性插入一条记录,或者批量插入多条记录。如果插入的列...

    sql入门经典 pdf文档

    在SQL Server中,数据库是存放所有数据及相关对象的基础容器。一个数据库可以包含多个表、视图、索引、存储过程等。创建数据库的基本语法如下: ```sql CREATE DATABASE 数据库名 ON ( NAME = 主数据文件逻辑名称,...

    《数据库——sql语法大全》

    2. **字段属性**:字段具有特定的属性,如数据类型(如文本、数字或日期)、是否允许空值、默认值等,这些属性影响数据的存储和处理方式。 3. **使用SELECT语句**:这是SQL中最常用的功能,用于从表中选取数据。...

    SQL学习(SQL语言学习的DOC资料)

    - **SELECT语句**:用于从数据库中检索数据,是最常用的SQL语句,可以通过指定字段、条件、排序等方式定制查询结果。 - **INSERT语句**:向表中插入新记录,包括单条记录的插入和批量插入。 - **UPDATE语句**:...

Global site tag (gtag.js) - Google Analytics