欢迎讨论,使用ADO连接SQL SERVER中应用数据字典,征询优秀方案。是不是多层结构里,数据字典用处不大了? (300分)

  • 主题发起人 主题发起人 SEVN
  • 开始时间 开始时间
S

SEVN

Unregistered / Unconfirmed
GUEST, unregistred user!
用ADO连接 SQL server,怎么使用数据字典,像BDE里的那样。
BDE中的数据字典不错,可在ADO中如何实现呢?
难道ADO就不能使用数据字典了吗?
 
TO:chinapeng
拜托,给点信心好不好,没有办法至少还有想法嘛,没有想法还有希望嘛。
连希望都不给啊?
 
用ADO:
一:取用SQL Server的数据字典,从sysobjects、syscolumns这几个表
二:自建,一般在下比较喜欢用第二种,因为分析及转接比较方便,大型的工程大部分自
建数据字典的
 
*/. . . * . * 祝
./* . [] * .__ 你
? */ . .//~~~~~~~~~~~~'/. | ◆ 快
/* ,/,./,...........,/.| ◆ . 乐
|| ..▎# ▎田 田 ▎ | ▎◆ !
|| &&▎ ▎ ▎'|'▎ o ..
|| ##■■■■■■■■■■〓▄▃▂▁
祝事业有成!
 
拭目以待 up
 
谢谢各位朋友。
能不能有点具体的?
 
下载 中文手册
Ado210.chm
 
去哪儿下载呢?
 
自己建立一些视图吧
 
使用sysobjects难道不能满足要求???
 
把以下的脚本放在查询分析器中,就可以看到执行结果了
select a.name 表名,
case when d.keyno is null then
null else
d.keyno end 主外键顺序,
b.name 字段名,
c.name 字段类型,
case when b.name in (N'nchar', N'nvarchar') then
b.length/2 else
b.length end 数据长度,
case when c.name in (N'decimal',N'numeric') then
ColumnProperty(object_id(a.name), b.name, N'Precision') else
NULL end 精度,
case when c.name in (N'decimal',N'numeric') then
ColumnProperty(object_id(a.name), b.name, N'Scale') else
NULL end 小数位,
ColumnProperty(object_id(a.name), b.name, N'IsIdentity') 标识,
case when (ColumnProperty(object_id(a.name), b.name, N'IsIdentity') <> 0) then
CONVERT(nvarchar(40), ident_seed(a.name)) else
null end 标识种子,
case when (ColumnProperty(object_id(a.name), b.name, N'IsIdentity') <> 0) then
CONVERT(nvarchar(40), ident_incr(a.name)) else
null end 标识自增量,
b.isnullable [允许空],
f.text 默认值
from dbo.sysobjects a
left join dbo.syscolumns b on a.id=b.id
left join dbo.systypes c on b.xtype=c.xtype
left join dbo.sysindexkeys d on a.id=d.id and b.colid=d.colid and d.indid=2
left join dbo.syscomments f on b.cdefault=f.id
where a.xtype='U'
order by a.name,b.colid
 
结果如下:
表名 主外键顺序 字段名 字段类型 数据长度 精度 小数位 标识 标识种子 标识自增量 允许空 默认值
-------------------------------------------------------------------------------------------------------------------------------- ------ -------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------- ----------- ----------- ----------- ----------- ---------------------------------------- ---------------------------------------- ----------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
MSreplication_options 1 optname nvarchar 256 NULL NULL 0 NULL NULL 0 NULL
MSreplication_options 1 optname sysname 256 NULL NULL 0 NULL NULL 0 NULL
MSreplication_options NULL value bit 1 NULL NULL 0 NULL NULL 0 NULL
MSreplication_options NULL major_version int 4 NULL NULL 0 NULL NULL 0 NULL
MSreplication_options NULL minor_version int 4 NULL NULL 0 NULL NULL 0 NULL
MSreplication_options NULL revision int 4 NULL NULL 0 NULL NULL 0 NULL
MSreplication_options NULL install_failures int 4 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL commid int 4 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL start datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL lastchange datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL totnum int 4 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL outnum int 4 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL status char 1 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL applname varchar 30 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL xactname varchar 30 NULL NULL 0 NULL NULL 0 NULL
spt_committab NULL password varchar 30 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL ss_dtype tinyint 1 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL fixlen int 4 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info 1 ODBCVer tinyint 1 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL TYPE_NAME nvarchar 256 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL TYPE_NAME sysname 256 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL DATA_TYPE smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL data_precision int 4 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL numeric_scale smallint 2 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL RADIX smallint 2 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL length int 4 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL LITERAL_PREFIX varchar 32 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL LITERAL_SUFFIX varchar 32 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL CREATE_PARAMS varchar 32 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL NULLABLE smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL CASE_SENSITIVE smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL SEARCHABLE smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL UNSIGNED_ATTRIBUTE smallint 2 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL MONEY smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL AUTO_INCREMENT smallint 2 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL LOCAL_TYPE_NAME nvarchar 256 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL LOCAL_TYPE_NAME sysname 256 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL charbin tinyint 1 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info NULL SQL_DATA_TYPE smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info NULL SQL_DATETIME_SUB smallint 2 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info_ext NULL user_type smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info_ext NULL CREATE_PARAMS varchar 32 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info_ext NULL AUTO_INCREMENT smallint 2 NULL NULL 0 NULL NULL 1 NULL
spt_datatype_info_ext 1 typename nvarchar 256 NULL NULL 0 NULL NULL 0 NULL
spt_datatype_info_ext 1 typename sysname 256 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_db NULL xserver_name varchar 30 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_db NULL xdttm_ins datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_db NULL xdttm_last_ins_upd datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_db NULL xfallback_dbid smallint 2 NULL NULL 0 NULL NULL 1 NULL
spt_fallback_db NULL name varchar 30 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_db NULL dbid smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_db NULL status smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_db NULL version smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_dev NULL xserver_name varchar 30 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_dev NULL xdttm_ins datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_dev NULL xdttm_last_ins_upd datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_dev NULL xfallback_low int 4 NULL NULL 0 NULL NULL 1 NULL
spt_fallback_dev NULL xfallback_drive char 2 NULL NULL 0 NULL NULL 1 NULL
spt_fallback_dev NULL low int 4 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_dev NULL high int 4 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_dev NULL status smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_dev NULL name varchar 30 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_dev NULL phyname varchar 127 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_usg NULL xserver_name varchar 30 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_usg NULL xdttm_ins datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_usg NULL xdttm_last_ins_upd datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_usg NULL xfallback_vstart int 4 NULL NULL 0 NULL NULL 1 NULL
spt_fallback_usg NULL dbid smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_usg NULL segmap int 4 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_usg NULL lstart int 4 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_usg NULL sizepg int 4 NULL NULL 0 NULL NULL 0 NULL
spt_fallback_usg NULL vstart int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL lastrun datetime 8 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL cpu_busy int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL io_busy int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL idle int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL pack_received int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL pack_sent int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL connections int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL pack_errors int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL total_read int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL total_write int 4 NULL NULL 0 NULL NULL 0 NULL
spt_monitor NULL total_errors int 4 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL ss_dtype tinyint 1 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL fixlen int 4 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL type_name nvarchar 256 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL type_name sysname 256 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types 1 oledb_data_type smallint 2 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL best_match bit 1 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL is_nullable bit 1 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL case_sensitive bit 1 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL fixed_prec_scale bit 1 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL is_long bit 1 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL auto_unique_value tinyint 1 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL data_precision int 4 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL numeric_scale smallint 2 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL column_size int 4 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL literal_prefix nvarchar 64 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL literal_prefix sysname 64 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL literal_suffix nvarchar 64 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL literal_suffix sysname 64 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL searchable int 4 NULL NULL 0 NULL NULL 0 NULL
spt_provider_types NULL unsigned_attribute tinyint 1 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL local_type_name nvarchar 256 NULL NULL 0 NULL NULL 1 NULL
spt_provider_types NULL local_type_name sysname 256 NULL NULL 0 NULL NULL 1 NULL
spt_server_info NULL attribute_id int 4 NULL NULL 0 NULL NULL 0 NULL
spt_server_info NULL attribute_name varchar 60 NULL NULL 0 NULL NULL 0 NULL
spt_server_info NULL attribute_value varchar 255 NULL NULL 0 NULL NULL 0 NULL
spt_values NULL name nvarchar 70 NULL NULL 0 NULL NULL 1 NULL
spt_values NULL name sysname 70 NULL NULL 0 NULL NULL 1 NULL
spt_values 1 number int 4 NULL NULL 0 NULL NULL 0 NULL
spt_values 2 type nchar 6 NULL NULL 0 NULL NULL 0 NULL
spt_values NULL low int 4 NULL NULL 0 NULL NULL 1 NULL
spt_values NULL high int 4 NULL NULL 0 NULL NULL 1 NULL
spt_values NULL status int 4 NULL NULL 0 NULL NULL 1 (0)
(115 row(s) affected)
 
你用的SQL Server 是哪个版本的,
我看执行结果向是7.0 的,
这个脚本在2000下用过,我现在项目的数据字典就是用他做的,
但不知道是不是你要的,
一下贴出这么多,吓我吗?
 
哥们说的没错,我用的是7.0。
2000我还没有,我这里落后着呢,呵呵。
能给我解释解释吗?
 
我做的这个项目是自建的,学习
 
to :lyjgs.168
怎么自建?能具体讲讲吗?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部