Подключение VB6 и MS Access 2007 - PullRequest
       31

Подключение VB6 и MS Access 2007

1 голос
/ 29 января 2012

Я пытаюсь создать простую Visual Basic 6 программу / базу данных, которая использует MS Access 2007 в качестве серверной части.У меня нет опыта работы с VB-программированием.Я просто хочу, как, каковы самые простые способы подключения VB и доступа?Я искал почти во всем Интернете, как это сделать, но я думаю, что я делаю это неправильно.Кто-нибудь может мне помочь?Спасибо.

Ответы [ 2 ]

4 голосов
/ 29 января 2012

Используйте ADO. В руководстве пользователя VB6 есть руководство по подключению VB6 к Access. http://msdn.microsoft.com/en-us/library/aa240855(v=vs.60).aspx

Вам потребуется использовать соответствующую строку подключения для Access 2007. http://www.connectionstrings.com/access-2007

2 голосов
/ 29 января 2012

Эти сайты могут подойти для вас. Я нашел их с помощью Google и поиска "vb 6 доступ 2007".


Предложение от http://www.daniweb.com/software-development/visual-basic-4-5-6/threads/110825:

Не используйте Microsoft.Jet.OLEDB.4.0 для провайдера. Вам нужно использовать "Microsoft.ACE.OLEDB.12.0"

Самый простой способ - настроить канал передачи данных или поставщика данных.




Предложение от http://www.codeguru.com/forum/showthread.php?t=472469:

Если вы использовали библиотеку объектов Microsoft DAO 3.6, попробуйте удалить ссылку на нее и вместо нее установить ссылку на библиотеку объектов ядра базы данных Microsoft Office 12.0 Access.




Лучший ответ от http://answers.yahoo.com/question/index?qid=20090209051024AAl8ZRC:

Const DBNAME = "c:\customer.mdb"    

Set objFSOA = CreateObject("Scripting.FileSystemObject…    
If not objFSOA.FileExists(DBNAME) Then        
    CreateDatabase    
End if    

Set objConnectionA = CreateObject("ADODB.Connection")    
objConnectionA.Open "Provider= Microsoft.Jet.OLEDB.4.0; " & "Data Source= " & DBNAME    
Dim strSQL     
strSQL = "INSERT INTO Test(col_1, col_2) VALUES (23, 'Test');"     

objConnectionA.Execute(strSQL)     

objConnectionA.Close    

Private Sub CreateDatabase()    
    Dim objADOXDatabase    
    Set objADOXDatabase = CreateObject("ADOX.Catalog")    
    objADOXDatabase.Create "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & DBNAME    
    Set objConnectionA = CreateObject("ADODB.Connection")    
    objConnectionA.Open "Provider= Microsoft.Jet.OLEDB.4.0; " & "Data Source= " & DBNAME    
    objConnectionA.Execute "Create Table Test(col_1 number, col_2 text(10))"    
    objConnectionA.Close    

 End Sub        




Предлагаемый ответ от http://www.database -answers.com / microsoft / Access-Modules-DAO / 32414159 / открытие-доступа-2007-в-vb6-accessdatabaseengineexe-acedaodll.aspx :

3) In VB6 Project|References,    
    a) Deselect Microsoft DAO 3.6 object library    
    b) Select Microsoft Office 12 access database engine object library    
    c) Select Microsoft Office 12 object library    
    4) no special code changes needed when setting db objects    

Я надеюсь, что эти предложения и предоставленные ссылки дадут вам некоторое представление об отношениях между VB 6 и Access 2007.

...