Access 2007 с Visual Basic 6.0
10 отговора
0 прегледа
Access 2007 с Visual Basic 6.0
Здравейте !
Може ли някой да ми помогне да свържа Аccess 2007 с Visual Basic 6.0
Как ли не опитах да я свържа тази таблица , но все ми дава грешка : could not find file и ми маркира ето този ред от сорса :
db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " & path
А ето го и целия сорс:
Form1:
Private Sub Form_Load()
With ListView1.ColumnHeaders
.Add , , "№", 300
.Add , , "ЕГН", 1200
.Add , , "Име", 2000
.Add , , "Презиме", 2000
.Add , , "Фамилия", 2000
.Add , , "Санкция", 5000
.Add , , "Дата", 1200
End With
LoadData
End Sub
Sub LoadData()
Dim list As ListItem
Dim X As Integer
ConnectDB
rs.Open "Select * from AND", db, 3, 3
Do Until rs.EOF
Set list = ListView1.ListItems.Add(, , rs(0))
For X = 1 To 7
list.SubItems(X) = rs(X)
Next X
rs.MoveNext
Loop
Set rs = Nothing
db.Close: Set db = Nothing
End Sub
Module1:
Public db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public path As String
Public Sub ConnectDB()
path = App.path & "\AND.mdb"
db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " & path
End Sub
Тъкато съм още прохождащ така да се каже, вероятно е да съм пропуснал нещо! Но не мога да вдяна !
Щ е се радвам на всякакви съвети, относно свързването на Аccess 20007 с Visual Basic 6.0
Може ли някой да ми помогне да свържа Аccess 2007 с Visual Basic 6.0
Как ли не опитах да я свържа тази таблица , но все ми дава грешка : could not find file и ми маркира ето този ред от сорса :
db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " & path
А ето го и целия сорс:
Form1:
Private Sub Form_Load()
With ListView1.ColumnHeaders
.Add , , "№", 300
.Add , , "ЕГН", 1200
.Add , , "Име", 2000
.Add , , "Презиме", 2000
.Add , , "Фамилия", 2000
.Add , , "Санкция", 5000
.Add , , "Дата", 1200
End With
LoadData
End Sub
Sub LoadData()
Dim list As ListItem
Dim X As Integer
ConnectDB
rs.Open "Select * from AND", db, 3, 3
Do Until rs.EOF
Set list = ListView1.ListItems.Add(, , rs(0))
For X = 1 To 7
list.SubItems(X) = rs(X)
Next X
rs.MoveNext
Loop
Set rs = Nothing
db.Close: Set db = Nothing
End Sub
Module1:
Public db As New ADODB.Connection
Public rs As New ADODB.Recordset
Public path As String
Public Sub ConnectDB()
path = App.path & "\AND.mdb"
db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " & path
End Sub
Тъкато съм още прохождащ така да се каже, вероятно е да съм пропуснал нещо! Но не мога да вдяна !
Щ е се радвам на всякакви съвети, относно свързването на Аccess 20007 с Visual Basic 6.0
Re: Access 2007 с Visual Basic 6.0
Имаш шпации в connection string, които са делимитъри в случая, затова ти пращи.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source =
трябва да стане:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=
Ето този сайт си го сложи във bookmarks.
[линк]
Provider=Microsoft.Jet.OLEDB.4.0;Data Source =
трябва да стане:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=
Ето този сайт си го сложи във bookmarks.
[линк]
Re: Access 2007 с Visual Basic 6.0
Благодаря ти, пробвах , но не стана ! По същия начин ми маркира този ред и ми излиза съобщение от сорта , че не намира файла ....
Re: Access 2007 с Visual Basic 6.0
Жалко, че не е станало. Според мен проблемът ти е във въпросния connection string, не в останалата част на кода. Така че предлагам да го изпробваш в различни варианти, докато проработи. VB6 има много добри средства за дебъг. Можеш да пробваш в Immediate window точно тази част на кода и да работиш върху нея, докато тръгне без грешка.
Re: Access 2007 с Visual Basic 6.0
Мъка! Пробвай с db.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & path
JET не поддържа новите формати на access/excel. За да ползваш новия OLEDB provider на access трябва да инсталираш при клиента Microsoft Access Database Engine 2010 Redistributable.
Готиното е, че в горния редистрибутив вече има и x64 версия на provider-а, ако ролзваш linked server-и под x64 версия на SQL Server.
[линк]
JET не поддържа новите формати на access/excel. За да ползваш новия OLEDB provider на access трябва да инсталираш при клиента Microsoft Access Database Engine 2010 Redistributable.
Готиното е, че в горния редистрибутив вече има и x64 версия на provider-а, ако ролзваш linked server-и под x64 версия на SQL Server.
[линк]
Re: Access 2007 с Visual Basic 6.0
Ти да не би да имаш проблем с ADO? Коя версия ползваш в Project | References?
Я виж какво ти дава това
Set db = New ADODB.Connection
... точно преди db.Open
Имаш ли Office 2010? Ако не, пробвай да инсталираш Access DB Engine-а от предния пост.
[линк]
Я виж какво ти дава това
Set db = New ADODB.Connection
... точно преди db.Open
Имаш ли Office 2010? Ако не, пробвай да инсталираш Access DB Engine-а от предния пост.
[линк]
Re: Access 2007 с Visual Basic 6.0
Един елеметарен трик за тестване на конекти и създаване на верни стрингове:
1. Прави се един нов, празен файл и се преименува на "нещоси.udl"
2. Цъкваш два пъти - стартира се "OLE DB Core service"- формичка Data Link property
3. Избираш си каквото искаш и тестваш връзката
4. Излизаш от Data Link property, отваряш "нещоси.udl" с текстов редактор и си копираш стринга.
ето примерче:
[code]
[oledb]
; Everything after this line is an OLE DB initstring
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=T:\!!!!!_PGMETT\@@_Work\SUBD & Prilojen soft\Books\Access_2003_Goncharov\pochta.mdb;Persist Security Info=False
[/code]
ПП По-добрия начин е да се направи потребителския интерфейс така, че потребителя в параметри да настройва Data Link property (да му се дава достъп до сервиза) и програмата да ползва създадената от потребителя връзка.
1. Прави се един нов, празен файл и се преименува на "нещоси.udl"
2. Цъкваш два пъти - стартира се "OLE DB Core service"- формичка Data Link property
3. Избираш си каквото искаш и тестваш връзката
4. Излизаш от Data Link property, отваряш "нещоси.udl" с текстов редактор и си копираш стринга.
ето примерче:
[code]
[oledb]
; Everything after this line is an OLE DB initstring
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=T:\!!!!!_PGMETT\@@_Work\SUBD & Prilojen soft\Books\Access_2003_Goncharov\pochta.mdb;Persist Security Info=False
[/code]
ПП По-добрия начин е да се направи потребителския интерфейс така, че потребителя в параметри да настройва Data Link property (да му се дава достъп до сервиза) и програмата да ползва създадената от потребителя връзка.
Редактирано от NikB на