该SQL语句会使用到sysextended_properties目录视图。
该视图的说明如下:
说明:该视图针对当前数据库中的每个扩展属性返回一行。
具体返回结果集中每列的含义请参考MSDN文档。
示例代码如下:
例如我要查询表table1的所有列的列说明:
select AValue,BName,
CName as TypeName,BMax_length,BPrecision,BScale
from sysextended_properties A inner join syscolumns B
on Amajor_id=Bobject_id
and Aminor_id=BColumn_id
inner join systypes c on Buser_type_id=Cuser_type_id
where Amajor_ID=object_id('Storage_Goods') and AValue!=''
注意:目录视图只有SQL SERVER2005及以上版本才有。
修改数据文件的扩展性;
alter database datafile '文件路径' autoextend on next 100m maxsize 2000M;
给表空间增加新的数据文件;
alter tablespace 表空间名 add datafile '数据文件路径' size 1000m autoextend on next 100m maxsize 2000M;
在对象资源管理器中,连接到 SQL Server 数据库引擎实例,然后展开该实例。
展开“数据库”,右键单击要扩展的数据库,再单击“属性”。
在“数据库属性”中,选择“文件”页。
若要增加现有文件的大小,请增加文件的“初始大小 (MB)”列中的值。数据库的大小须至少增加 1 MB。
若要通过添加新文件增加数据库的大小,请单击“添加”,然后输入新文件的值。有关详细信息,请参阅如何向数据库中添加数据或日志文件 (SQL Server Management Studio)。
单击“确定”。
两种db数据库的打开方式
现在桌面级的各种管理系统使用的数据库都是比较常见的类型,比如Access数据库(扩展名为mdb)、xBase类数据库(扩展名为dbf),但有两种扩展名同为db的数据库,分属两个公司的产品,一个是老牌桌面数据库Paradox
,这是Borland公司的产品,其广泛使用的时代是在Dos时期,但现在仍有用Delphi、C++Builder等工具开发的产品使用这一类型的数据库,
Microsoft的桌面数据引擎JET对其支持也比较完整;另一个是Sybase的ASA数据库,全称叫做
Adaptive Server Anywhere
,这个数据库以前被称作
Sql Anywhere
,这个数据库不仅可以用在桌面级,还可以用于服务器级,因为其支持存储过程、触发器等,一般在使用
PowerBuilder
开发的产品中很常见,因为毕竟是同一个公司的产品。这两个数据库都可以通过Ado来访问,在网上比较流行的链接字符串中都有其介绍,但屡次试验后均不成功,经过数番摸索终于找到其链接字串,现在简介如下:Paradox的链接字串:
connConnectionString = "Provider=MicrosoftJetOLEDB40;" _
& "Data Source=" &
数据库文件存放目录_& ";Jet OLEDB:Engine Type=82;"这里使用JET引擎提供的链接字串,这里有两点需要注意,一是
Jet OLEDB:Engine Type=82
,这是JET引擎为Paradox数据库提供的驱动类型编号,二是
Data Source
的值为数据库文件存放路径,而不是数据文件本身,另外还有一点至关重要那就是需要在安装BDE(Borland Data Engine
)的机器上才可以运行。
ASA的链接字串:
connConnectionString = "Driver={Adaptive Server Anywhere 80};DatabaseFile=
数据库文件全路径名
;Uid=DBA;Pwd=SQL"
同样这也是必须在安装ASA的机器上运行,其中的
80
是指数据库的版本,打开目标机器的ODBC管理器,看看都有那个类型的版本,修改为对应的就应该可以了。
Uid=DBA;Pwd=SQL
,这是该类型数据库的超级用户名及密码,这是默认的,对于改动过的密码,就要想想其他办法了。
还有一些扩展名为db的数据库文件,多数都是经过改变扩展名的其他类型数据库,比如把DBF或MDB的扩展名改为db等等,这时大家再判断一下属于哪种数据库吧
如何使用SQL脚本查看数据库中表的扩展属性
SELECT
表名 = case when acolorder=1 then dname else '' end,
表说明 = case when acolorder=1 then isnull(fvalue,'') else '' end,
字段序号 = acolorder,
字段名 = aname,
标识 = case when COLUMNPROPERTY( aid,aname,'IsIdentity')=1 then '√'else '' end,
主键 = case when exists(SELECT 1 FROM sysobjects where xtype='PK' and parent_obj=aid and name in (
SELECT name FROM sysindexes WHERE indid in(
SELECT indid FROM sysindexkeys WHERE id = aid AND colid=acolid))) then '√' else '' end,
类型 = bname,
占用字节数 = alength,
长度 = COLUMNPROPERTY(aid,aname,'PRECISION'),
小数位数 = isnull(COLUMNPROPERTY(aid,aname,'Scale'),0),
允许空 = case when aisnullable=1 then '√'else '' end,
默认值 = isnull(etext,''),
字段说明 = isnull(g[value],'')
FROM
syscolumns a
left join
systypes b
on
axusertype=bxusertype
inner join
sysobjects d
on
aid=did and dxtype='U' and dname<>'dtproperties'
left join
syscomments e
on
acdefault=eid
left join
sysproperties g
on
aid=gid and acolid=gsmallid
left join
sysproperties f
on
did=fid and fsmallid=0
where
dname='要查询的表' --如果只查询指定表,加上此条件
order by
aid,acolorder
以上就是关于如何使用SQL脚本查看数据库中表的扩展属性全部的内容,包括:如何使用SQL脚本查看数据库中表的扩展属性、如何增加数据库的大小、DB扩展名的数据库文件怎么打开:两种db数据库的打开方式等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)