SQL,第1张

SQL,第2张

在开发基于SQL Server数据库的应用时,我们经常会遇到需要知道SQL Server数据库对象相关信息的情况,比如SQL Server中有哪些数据库,这些数据库中有哪些数据表,每个数据表中有哪些字段,这些字段是什么属性。作者在开发数据库导入程序时遇到了这些问题。经过一番探索,上述问题得到了很好的解决。现在我给大家介绍一下实现方法。界面如下图所示。
1。开发环境
本文列出的代码已经在Windows NT 4.0(SP6)、Microsoft Visual Basic 6.0和Microsoft SQL Server 2000中调试过。
2。实现思路
使用SQL-DMO(分布式管理对象)访问SQL Server数据库。SQL-DMO是为Windows 9x和Windows NT提供的32位OLE对象。它为OLE兼容的应用程序提供了SQL Server管理功能的接口,开发人员可以通过DMO直接访问SQL Server数据对象。
3。实现代码
在“菜单->项目->引用”中选择“Microsoft SQLDMO对象库”。
在代码中定义以下全局变量:
public osql server as SQLDMO。SQLServer
'将sqldmo.sqlserver对象
public o currentdb定义为sqldmo.database [/br/ ]'定义sqldmo。数据库对象
公共表为SQLDMO。table
' Define a sqldmo . table object
public Server _ name as string
SQL Server服务器名称
public username as string
'用户名
public password as string
'用户密码
.......
下面是一些关键的程序代码:
Private subcmd _ link _ Click()
'单击“连接”按钮
.......
Set osql Server = createobject(" sqldmo . sqlserver ")
osql Server . Connect Server _ NAME,username,password
'连接到SQL Server服务器,SERVER
_NAME是服务器名,USERNAME是用户名。PASSWORD是用户密码[/Br/]filmptydatabaselist(true)[/Br/]if cob _ sqldb . list count > 0 then[/Br/]cob _ sqldb . listindex = 0[/Br/]cob _ sqldb _ click[/Br/]end if[/Br/].......
end sub
private sub fill empty database list(b fill As boolean)
'获取SQL Server服务器上的所有数据库名称
如果bFill = True,则
Dim oDB As SQLDMO。Database
Set oDB = New SQLDMO。oSQLServer中每个oDB的数据库
。databases
If b . system object = false then
'判断它不是系统数据库
cob _ SQLDB . additemodb . name
'将非系统数据库的名称添加到数据库信息列表框
End If
NEXT ODB
End If
End SUB
PRIVATE subc ub b _ SQLDB _ CLICK()
'单击“数据库信息”列表框[]......

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » SQL

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情