请教!如何使用ASP.Net遍历sqlServer2000中的表 各位大侠,知道如何使用ASP.Net遍历sqlServer2000中的表吗?我刚开始用ASP.Net,是个新手,望各位多多指教,谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 象执行普通的sql一样,建立数据库连接执行select * from sysobjects where type='u'就是你连接到的数据库的所有表 看我以前發的貼子http://www.vfp.cn/sdss/dispbbs.asp?BoardID=26&ID=7871 [求助]如何获得和设置数据库中表的字段的描述值呀--1.SELECT 表名=case when a.colorder=1 then d.name else '' end,表说明=case when a.colorder=1 then isnull(f.value,'') else '' end,字段序号=a.colorder,字段名=a.name,字段标题=isnull(g.[value],''),标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end,主键=case when exists(SELECT 1 FROM sysobjects where xtype='PK' and name in ( SELECT name FROM sysindexes WHERE indid in( SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid ))) then '√' else '' end,类型=b.name,占用字节数=a.length,长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),允许空=case when a.isnullable=1 then '√'else '' end,默认值=isnull(e.text,'')FROM syscolumns aleft join systypes b on a.xtype=b.xusertypeinner join sysobjects d on a.id=d.id and d.xtype='U' and d.name<>'dtproperties'left join syscomments e on a.cdefault=e.idleft join sysproperties g on a.id=g.id and a.colid=g.smallid left join sysproperties f on d.id=f.id and f.smallid=0--where d.name='要查询的表' --如果只查询指定表,加上此条件order by a.id,a.colorder2.--示例--创建表create table 表(a1 varchar(10),a2 char(2))--为表添加描述信息EXECUTE sp_addextendedproperty N'MS_Description', '人员信息表', N'user', N'dbo', N'table', N'表', NULL, NULL--为字段a1设置标题EXECUTE sp_addextendedproperty N'MS_Description', '姓名', N'user', N'dbo', N'table', N'表', N'column', N'a1'--为字段a2设置标题EXECUTE sp_addextendedproperty N'MS_Description', '性别', N'user', N'dbo', N'table', N'表', N'column', N'a2'--更新表中列a1的标题:EXEC sp_updateextendedproperty 'MS_Description','字段1','user',dbo,'table','表','column',a1--删除表中列a1的标题:EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table','表','column',a1--删除测试drop table 表fn_listextendedproperty返回数据库对象的扩展属性值。语法fn_listextendedproperty ( { default | [ @name = ] 'property_name' | NULL } , { default | [ @level0type = ] 'level0_object_type' | NULL } , { default | [ @level0name = ] 'level0_object_name' | NULL } , { default | [ @level1type = ] 'level1_object_type' | NULL } , { default | [ @level1name = ] 'level1_object_name' | NULL } , { default | [ @level2type = ] 'level2_object_type' | NULL } , { default | [ @level2name = ] 'level2_object_name' | NULL } ) 参数{default|[@name =] 'property_name'|NULL}是属性的名称。property_name 为 sysname 类型。有效的输入为 default、NULL 或属性名。{default|[@level0type =] 'level0_object_type'|NULL}用户或用户定义类型。level0_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入是 USER、TYPE、default 和 NULL。{default|[@level0name =] 'level0_object_name'|NULL}指定的 0 级对象类型的名称。level0_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。{default|[@level1type =] 'level1_object_type'|NULL}1 级对象的类型。level1_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入为 TABLE、VIEW、PROCEDURE、FUNCTION、DEFAULT、RULE、default 和 NULL。 说明 默认映射 NULL,而"default"映射对象类型 DEFAULT。{default|[@level1name =] 'level1_object_name'|NULL}指定的 1 级对象类型的名称。level1_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。{default|[@level2type =] 'level2_object_type'|NULL}2 级对象的类型。level2_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入为 COLUMN、PARAMETER、INDEX、CONSTRAINT、TRIGGER、DEFAULT、default(映射 NULL)和 NULL。{default|[@level2name =] 'level2_object_name'|NULL}指定的 2 级对象类型的名称。level2_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。返回表下面是 fn_listextendedproperty 返回的表的格式。列名 数据类型 objtype sysname objname sysname name sysname value sql_variant 如果返回的表为空,可能对象没有扩展属性或用户没有列出对象扩展属性的权限。注释系统对象不允许有扩展属性。 如果 property_name 的值为 NULL 或 default,fn_listextendedproperty 返回对象的所有属性。如果指定了对象类型且相应的对象名的值为 NULL 或 default,则 fn_listextendedproperty 返回指定类型的所有对象的所有扩展属性。对象是按级别区分的,0 级为最高,2 级为最低。如果指定了较低级别的对象(1 或 2 级)类型和名称,则父对象类型和名称的值不能为 NULL 或 default。否则,函数将返回错误。用于列出某些级别对象类型的扩展属性的权限有所不同。 对于级别 0 的对象,如果某用户为级别 0 的名称中所标识的用户,或者是 db_owner 和 db_ddladmin 固定数据库角色的成员,则该用户可以列出指定"user"类型的扩展属性。 所有用户可使用 0 级对象类型"type"列出扩展属性。对于 1 级对象,如果用户为对象的所有者或用户对于对象有权限,该用户可以用任何有效的类型值列出扩展属性。 对于 2 级对象,如果当前用户对父对象(1 级和 0级)有任何权限,该用户可以用任何有效的类型值列出扩展属性。 示例下例列出在数据库对象上设置的所有扩展属性。SELECT *FROM ::fn_listextendedproperty(NULL, NULL, NULL, NULL, NULL, NULL, NULL)-或-SELECT *FROM ::fn_listextendedproperty(default, default, default, default, default, default, default)此示例列出表"T1"中所有列的所有扩展属性。CREATE table T1 (id int , name char (20))EXEC sp_addextendedproperty 'caption', 'Employee ID', 'user', dbo, 'table', 'T1', 'column', idEXEC sp_addextendedproperty 'caption', 'Employee Name', 'user', dbo, 'table', 'T1', 'column', nameSELECT *FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table', 'T1', 'column', default)下面是结果集:objtype objname name value COLUMN id caption Employee ID COLUMN name caption Employee Name 仿百度关键字高亮显示 Bitmap这几行代码错在哪里了???????? CrystalReportViewer按钮图片为什么不显示 webparts作为后台可以随意的设置怎让设置好的后台在前台显示了 使用迅雷多线程下载工具下载时,系统不能访问,望能者指点! 关于GridView控件的 如何动态的添加控件? 菜菜菜鸟问题,关于数据库的,请各位高手解答!! 高手快帮我看看,关于文件流的问题和图片读取 没有ASP基础,如何学习ASP.NET 在web中如何实现生成EXCEL表格? 在javascript脚本中訪問代码文件中的方法
执行
select * from sysobjects where type='u'
就是你连接到的数据库的所有表
http://www.vfp.cn/sdss/dispbbs.asp?BoardID=26&ID=7871
--1.SELECT
表名=case when a.colorder=1 then d.name else '' end,
表说明=case when a.colorder=1 then isnull(f.value,'') else '' end,
字段序号=a.colorder,
字段名=a.name,
字段标题=isnull(g.[value],''),
标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end,
主键=case when exists(SELECT 1 FROM sysobjects where xtype='PK' and name in (
SELECT name FROM sysindexes WHERE indid in(
SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid
))) then '√' else '' end,
类型=b.name,
占用字节数=a.length,
长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
允许空=case when a.isnullable=1 then '√'else '' end,
默认值=isnull(e.text,'')
FROM 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
left join sysproperties f on d.id=f.id and f.smallid=0
--where d.name='要查询的表' --如果只查询指定表,加上此条件
order by a.id,a.colorder2.--示例--创建表
create table 表(a1 varchar(10),a2 char(2))--为表添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '人员信息表', N'user', N'dbo', N'table', N'表', NULL, NULL--为字段a1设置标题
EXECUTE sp_addextendedproperty N'MS_Description', '姓名', N'user', N'dbo', N'table', N'表', N'column', N'a1'--为字段a2设置标题
EXECUTE sp_addextendedproperty N'MS_Description', '性别', N'user', N'dbo', N'table', N'表', N'column', N'a2'--更新表中列a1的标题:
EXEC sp_updateextendedproperty 'MS_Description','字段1','user',dbo,'table','表','column',a1--删除表中列a1的标题:
EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table','表','column',a1--删除测试
drop table 表fn_listextendedproperty
返回数据库对象的扩展属性值。语法
fn_listextendedproperty (
{ default | [ @name = ] 'property_name' | NULL }
, { default | [ @level0type = ] 'level0_object_type' | NULL }
, { default | [ @level0name = ] 'level0_object_name' | NULL }
, { default | [ @level1type = ] 'level1_object_type' | NULL }
, { default | [ @level1name = ] 'level1_object_name' | NULL }
, { default | [ @level2type = ] 'level2_object_type' | NULL }
, { default | [ @level2name = ] 'level2_object_name' | NULL }
) 参数
{default|[@name =] 'property_name'|NULL}是属性的名称。property_name 为 sysname 类型。有效的输入为 default、NULL 或属性名。{default|[@level0type =] 'level0_object_type'|NULL}用户或用户定义类型。level0_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入是 USER、TYPE、default 和 NULL。{default|[@level0name =] 'level0_object_name'|NULL}指定的 0 级对象类型的名称。level0_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。{default|[@level1type =] 'level1_object_type'|NULL}1 级对象的类型。level1_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入为 TABLE、VIEW、PROCEDURE、FUNCTION、DEFAULT、RULE、default 和 NULL。 说明 默认映射 NULL,而"default"映射对象类型 DEFAULT。
{default|[@level1name =] 'level1_object_name'|NULL}指定的 1 级对象类型的名称。level1_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。{default|[@level2type =] 'level2_object_type'|NULL}2 级对象的类型。level2_object_type 的数据类型为 varchar(128),其默认值为 NULL。有效的输入为 COLUMN、PARAMETER、INDEX、CONSTRAINT、TRIGGER、DEFAULT、default(映射 NULL)和 NULL。{default|[@level2name =] 'level2_object_name'|NULL}指定的 2 级对象类型的名称。level2_object_name 的数据类型为 sysname,其默认值为 NULL。有效的输入为 default、NULL 或对象名。返回表
下面是 fn_listextendedproperty 返回的表的格式。列名 数据类型
objtype sysname
objname sysname
name sysname
value sql_variant
如果返回的表为空,可能对象没有扩展属性或用户没有列出对象扩展属性的权限。注释
系统对象不允许有扩展属性。 如果 property_name 的值为 NULL 或 default,fn_listextendedproperty 返回对象的所有属性。如果指定了对象类型且相应的对象名的值为 NULL 或 default,则 fn_listextendedproperty 返回指定类型的所有对象的所有扩展属性。对象是按级别区分的,0 级为最高,2 级为最低。如果指定了较低级别的对象(1 或 2 级)类型和名称,则父对象类型和名称的值不能为 NULL 或 default。否则,函数将返回错误。用于列出某些级别对象类型的扩展属性的权限有所不同。 对于级别 0 的对象,如果某用户为级别 0 的名称中所标识的用户,或者是 db_owner 和 db_ddladmin 固定数据库角色的成员,则该用户可以列出指定"user"类型的扩展属性。
所有用户可使用 0 级对象类型"type"列出扩展属性。
对于 1 级对象,如果用户为对象的所有者或用户对于对象有权限,该用户可以用任何有效的类型值列出扩展属性。
对于 2 级对象,如果当前用户对父对象(1 级和 0级)有任何权限,该用户可以用任何有效的类型值列出扩展属性。
示例
下例列出在数据库对象上设置的所有扩展属性。SELECT *
FROM ::fn_listextendedproperty(NULL, NULL, NULL, NULL, NULL, NULL, NULL)-或-SELECT *
FROM ::fn_listextendedproperty(default, default, default, default, default, default, default)此示例列出表"T1"中所有列的所有扩展属性。CREATE table T1 (id int , name char (20))EXEC sp_addextendedproperty 'caption', 'Employee ID', 'user', dbo, 'table', 'T1', 'column', idEXEC sp_addextendedproperty 'caption', 'Employee Name', 'user', dbo, 'table', 'T1', 'column', nameSELECT *
FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table', 'T1', 'column', default)下面是结果集:objtype objname name value
COLUMN id caption Employee ID
COLUMN name caption Employee Name