请问在程序中如何通过代码获取SQL数据库中在定义字段时给字段的描述文本信息
解决方案 »
- Delphi 超级简单的问题(急)
- 释放 exe
- 我的微机上装了两个打印机。我想用非默认的打印机打印数据该怎么做呢?
- 50分求问一个简单问题!!!
- 请教各位如何实现dbgrid中按住shift多选的问题?
- 如何把InterBase里面的内容备份到DBF文件中(或者是Excel文件中)?
- Ado+Access问题
- TFileTream的一个问题:如何多线程同时向一个filestream中写如信息
- dlephi新手问题.......
- 为何我用ADOQuery查询时,同样的语句和设置,在Grid中显示出来的速度有时会差很多,慢的时候看到硬盘的灯没有任何反应,为何?
- 类没有注册是什么意思
- 窗口得到焦点!
帮你up
这样就可以了?
我记得.asstring是取的该列的值,但是备注中的东西好象……?
呵呵,试试
(case when a.colorder=1 then d.name else '' end) N'表名',
a.colorder N'字段序号',
a.name N'字段名',
(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end) N'标识',
(case when (SELECT count(*)
FROM sysobjects
WHERE (name in
(SELECT name
FROM sysindexes
WHERE (id = a.id) AND (indid in
(SELECT indid
FROM sysindexkeys
WHERE (id = a.id) AND (colid in
(SELECT colid
FROM syscolumns
WHERE (id = a.id) AND (name = a.name))))))) AND
(xtype = 'PK'))>0 then '√' else '' end) N'主键',
b.name N'类型',
a.length N'占用字节数',
COLUMNPROPERTY(a.id,a.name,'PRECISION') as N'长度',
isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0) as N'小数位数',
(case when a.isnullable=1 then '√'else '' end) N'允许空',
isnull(e.text,'') N'默认值',
isnull(g.[value],'') AS N'字段说明'
--into ##txFROM syscolumns a left join systypes b
on a.xtype=b.xusertype
inner join sysobjects d
on a.id=d.id and d.xtype='U' and d.name<>'dtproperties'
left join syscomments e
on a.cdefault=e.id
left join sysproperties g
on a.id=g.id AND a.colid = g.smallid
order by object_name(a.id),a.colorder