У меня есть программа в Visual Basic 6, которая слушает ComPort и генерирует SQL-запросы на основе данных, которые она получает. Я использую ADODB в качестве моей базы данных по выбору.Выполнение запроса в ADODB в VB6
В настоящее время им пытаются это:
' Initiate Database Connection
Call dbConn
results.Open SQLQueryfeld(s), cn
Debug.Print (results.GetString)
Debug.Print ("SQL Statement " & SQLQueryfeld(s) & " wurde erfolgreich ausgeführt")
results.Close
Что дает мне «Эта операция не разрешена на закрытом объекте» на первой линии Debug.Print.
DBConn является публичной функцией, которая создает объект ADODB соединение с именем сп результатов начинается в голове функции кода составляет от, как
Dim results as New ADODB.Recordset
Конечная цель состоит в следующем: Выполнение INSERT SQL заявление (хранятся в строковом массиве SQLQueryfeld (s)) и получают возврат или нет, это было успешно. Я также открываю любой другой способ сделать это, но он должен использовать ADODB.
Вот какой-то другой код из того же проекта, который работает отлично:
Call dbConn
SQL = "SELECT Name FROM Personen WHERE Eintrag=" & Personalid & " "
rs.Open SQL, cn
If rs.RecordCount > 0 Then
tmp_name = rs.GetString
tmp_name = Replace(tmp_name, Chr(13), "")
tmp_name = Replace(tmp_name, Chr(10), "")
tmp_name = Replace(tmp_name, vbCrLf, "")
не должны использовать присваиваем переменной сп соединения , Попробуйте удалить строку вызова dbconn и использовать cn = dbConn – DevelopmentIsMyPassion
проверить 'cn.state' перед набором записей –
Я должен добавить, что вызов dbConn работает в других аналогичных кодовых формах с помощью SELECT вместо операторов INSERT – Magisch