SQLServer在数据库对象上使用扩展属性

简介: SQL Server 2000 引入了扩展属性,用户可在各种数据库对象上定义这些属性。这些扩展属性可用于存储与数据库对象有关的应用程序或站点特有的信息。因为属性存储在数据库中,所有读取属性的应用程序都能以相同的方式评估对象。
+关注继续查看

SQL Server 2000 引入了扩展属性,用户可在各种数据库对象上定义这些属性。这些扩展属性可用于存储与数据库对象有关的应用程序或站点特有的信息。因为属性存储在数据库中,所有读取属性的应用程序都能以相同的方式评估对象。这有助于在系统中的所有程序对数据的处理方式上强制一致性。

        每个扩展属性都有用户定义的名称和值。扩展属性值为最多可包含 7,500 字节数据的 sql_variant 值。

        扩展属性的可能用途包括:

  1. 指定表、视图或列的标题。这样,所有应用程序都可在显示表、视图或列信息的用户界面中使用该标题。
  2. 指定列的输入掩码,以便所有应用程序都可在执行 Transact-SQL 语句前验证数据。
  3. 指定关于在列中显示数据的格式规则。
  4. 记录应用程序可显示给用户的对特定数据库对象的描述。
  5. 指定应显示的列大小和窗口位置。

        SQL Server 2000提供了三个系统存储过程和一个函数用于操作扩展属性。它们分别是:

  • sp_addextendedproperty(将新扩展属性添加到数据库对象中。)
  • sp_updateextendedproperty(更新现有扩展属性的值。)
  • sp_dropextendedproperty(除去现有的扩展属性。)
  • fn_listextendedproperty(列出扩展属性)

        下面使用一个例子来说明这些函数的用法。我打算在SQLServer 提供的示例数据库Northwind中的表Categories中的Column CategoryID添加一个Description扩展属性,用以描述CategoryID的用途,可以如下做:
 
sp_addextendedproperty 'Description',  '目录编号',  'user',  dbo,  'table',  Categories,  'column',  CategoryID

其中参数分别指定了扩展属性,扩展属性的值,0级对象是user,0级对象名是dbo,一级对象类型是table,一级对象名是Gategories,二级对象是column,二级对象名是GategoryID。

添加后,运行如下代码可看到添加后的结果:
select * from ::fn_listextendedproperty ('Description',  'user',  'dbo',  'table',  'Categories',  'column',  'CategoryID')

其中的参数分别指定了扩展属性,0级对象,0级对象名,1级对象,1级对象名,2级对象,2级对象名。

得到的列表如下:
objtype          objname            name                value
COLUMN    CategoryID       Description       目录编号

其它的两个存储过程使用的方法类似。

相关实践学习
使用交互方式创建数据表
本次实验主要介绍如何在RDS-SQLServer数据库中使用交互方式创建数据表。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
9天前
|
SQL 存储 数据库
sqlserver复制远程数据库到本地
sqlserver复制远程数据库到本地
12 0
|
14天前
|
数据库 数据库管理
SQLServer数据库的创建
本次实验主要介绍如何基于阿里云DMS数据库实验室创建RDS-SQLServer数据库。
90 0
|
17天前
|
SQL 数据库连接 Shell
python连接SqlServer数据库
要使用Python连接SQL Server数据库,你需要先安装pyodbc库,然后使用它来建立连接。
python连接SqlServer数据库
|
3月前
|
SQL 存储 安全
docker 安装sqlserver数据库并开启代理(保姆级)
docker 安装sqlserver数据库并开启代理(保姆级)
|
3月前
|
SQL 网络协议 搜索推荐
Python - python如何连接sql server数据库
Python - python如何连接sql server数据库
66 0
|
3月前
|
数据库 C#
C#,.net,winform导入Excel功能以及下载Excel文件到本地,并使用SqlBulkCopy把DataTable类型的数据写入到sqlserver数据库中
C#,.net,winform导入Excel功能以及下载Excel文件到本地,并使用SqlBulkCopy把DataTable类型的数据写入到sqlserver数据库中
42 0
|
3月前
|
SQL 存储 XML
数据库视频第四章(sql server 2008数据类型、对于表的管理、规则的创建与删除)
数据库视频第四章(sql server 2008数据类型、对于表的管理、规则的创建与删除)
28 0
|
3月前
|
SQL 存储 运维
进阶宝典一|SqlServer数据库自动备份设置
进阶宝典一|SqlServer数据库自动备份设置
|
3月前
|
SQL 存储 Java
SQL用户权限总结 - sql server 2012数据库基础-用户管理及权限管理-实验报告
SQL用户权限总结 - sql server 2012数据库基础-用户管理及权限管理-实验报告
101 0
|
3月前
|
SQL 存储 数据库
SQL并发控制总结 - sql server 2012数据库基础-并发控制-实验报告
SQL并发控制总结 - sql server 2012数据库基础-并发控制-实验报告
推荐文章
更多