求用建SQLSERVER类型ODBC的例子或者源码,谢谢!!!

hansblue 2003-10-15 01:02:05
如题!!
本人急用,请会者指教!!!
谢谢!!!
...全文
37 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxcc 2003-10-21
  • 打赏
  • 举报
回复
引用
Microsoft OLE DB Service Component 1.0 TYPE library
和ADO

然后添加如下代码

Option Explicit
Dim adoConn As ADODB.Connection
Private Function BuildAdoConnection(ByVal ConnectionString As String) As String

' display the ADO Connection Window (ADO DB Designer)

Dim dlViewConnection As MSDASC.DataLinks

On Error GoTo Err_BuildAdoConnection


If Not (Trim$(ConnectionString) = "") Then
Set adoConn = New ADODB.Connection
adoConn.ConnectionString = ConnectionString
Set dlViewConnection = New MSDASC.DataLinks
dlViewConnection.hWnd = Me.hWnd
If dlViewConnection.PromptEdit(adoConn) Then
BuildAdoConnection = adoConn.ConnectionString
Else
BuildAdoConnection = ConnectionString
End If
Set dlViewConnection = Nothing
Set adoConn = Nothing
Else
Set dlViewConnection = New MSDASC.DataLinks
dlViewConnection.hWnd = Me.hWnd
Set adoConn = dlViewConnection.PromptNew
BuildAdoConnection = adoConn.ConnectionString
Set dlViewConnection = Nothing
Set adoConn = Nothing
End If

Exit_BuildAdoConnection:

On Error Resume Next
If Not (adoConn Is Nothing) Then
Set adoConn = Nothing
End If
If Not (dlViewConnection Is Nothing) Then
Set dlViewConnection = Nothing
End If
On Error GoTo 0
Exit Function

Err_BuildAdoConnection:

Select Case Err
Case 0
Resume Next
Case -2147217805
adoConn.ConnectionString = ""
Resume
Case 91
Resume Exit_BuildAdoConnection
Case Else
MsgBox "Error: " & Err.Number & vbCrLf & vbCrLf & Err.Description, vbInformation, App.Title & " - Advisory"
Resume Exit_BuildAdoConnection
End Select

End Function


Private Sub Command1_Click()
Set adoConn = New ADODB.Connection
Dim strAdoConn As String
strAdoConn = BuildAdoConnection("") 'strAdoConn 为连接字符串
MsgBox strAdoConn
End Sub
hansblue 2003-10-21
  • 打赏
  • 举报
回复
这个不是ADO字符串的方法吗?有没有直接生成一个ODBC呢?
难道只能这样做,请继续关注.
谢谢!!
yoki 2003-10-15
  • 打赏
  • 举报
回复
RDO对象的全称为Microsoft Remote Data Objects,VB 6带有这个部件。如果你想运行上面的代码,可以在“引用”对话框中选择Microsoft Remote Data Objects 2.0。如果想在窗体使用RDO控件(类似Data控件),可以在“部件”对话框选择Microsoft RemoteData Control 6.0。
使用rdo对象的rdoRegisterDataSource方法在程序内动态注册,这样就不存在“odbc打包”的问题了。具体方法如下:
rdoRegisterDataSource 方法示例
下面示例说明使用 rdoRegisterDataSource 方法建立新的 ODBC 数据源项。
Private Sub RegisterDataSource()
Dim en As rdoEnvironment
Dim cnTest As rdoConnection
Dim strAttribs As String
'建造关键字字符串。
strAttribs = "Description=" _
& "SQL Server on server SEQUEL" _
& Chr$(13) & "OemToAnsi=No" _
& Chr$(13) & "SERVER=SEQUEL" _
& Chr$(13) & "Network=DBNMPNTW" _
& Chr$(13) & "Database=WorkDB" _
& Chr$(13) & "Address=\\SEQUEL\PIPE\SQL\QUERY"

'建立新的注册的 DSN。
rdoEngine.rdoRegisterDataSource "示例", _
"SQL Server", True, strAttribs
'打开数据库。
Set en = rdoEngine.rdoEnvironments(0)
Set cnTest = en.OpenConnection( _
dsname:="示例", _
Prompt:=rdDriverNoPrompt, _
Connect:="UID=;PWD=;")

End Sub
yoki 2003-10-15
  • 打赏
  • 举报
回复
http://go.6to23.com/jinqu/vb/21.htm
yoki 2003-10-15
  • 打赏
  • 举报
回复

  Sub RegisterDataSource()
  Dim strAttribs As String
  ’建造关键字字符串。
  ’C:\myfile\myexample.l.mdb数据库文件名(包含路径)
  strAttribs =“DBQ=” _
  & “C:\myfile\myexample.mdb” _
  & Chr$(13) & “OemToAnsi=No” _
  & Chr$(13) & “SERVER=SEQUEL” _
  & Chr$(13) & “Network=DBNMPNTW” _
  & Chr$(13) & “Database=WorkDB”_
  & Chr$(13) &“Address=\\SEQUEL\PIPE\SQL\QUERY”
  ’建立新的注册的 DSN。
  rdoEngine.rdoRegisterDataSource “mydatasource”,
  “Microsoft Access Driver (*.mdb)”, True,
  strAttribs
  End Sub
  Private Sub Form_Load()
  Call rdoRegisterDataSource
  End Sub

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧