Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Either BOF or EOF is True / 16 сообщений из 16, страница 1 из 1
18.01.2006, 11:06:59
    #33488861
Coolagin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Хочу добавить в базу значение при добавления выдаёт ошибку "
Either BOF or EOF is True, or the current record has been deleted; the operation requested by the application requires a current recordPrivate " на строке "rs.Fields("Login").Value = "qqq""

Sub Form_Load()
Dim Cmd As ADODB.Command
Dim Prm As ADODB.Parameter
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
Set Cmd = New ADODB.Command
Set rs = New ADODB.Recordset

rs.LockType = adLockBatchOptimistic
rs.CursorType = adOpenDynamic

cn.CursorLocation = adUseClient

cn.Open "Provider=MSDASQL.1;Persist Security Info=False;Mode=Read;Extended Properties='DSN=Paradox;DBQ=C:\1;DefaultDir=C:\1;DriverId=538;FIL=Paradox 7.X;MaxBufferSize=2048;PageTimeout=600;';Initial Catalog=C:\1"

Set Cmd.ActiveConnection = cn

rs.Open "SELECT * FROM Userpass.db", cn
'rs.Source = aaa_
rs.ActiveConnection = cn
rs.Fields("Login").Value = "qqq"



Set DataGrid1.DataSource = rs

End Sub
...
Рейтинг: 0 / 0
18.01.2006, 11:16:40
    #33488886
TIKO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
так много перемнных, и комманд и параметр
rs.AddNew
rs.Fields("Login").Value = "qqq"
rs.Update
на счет нрового

на счет соединения, сначала коннект
rs.ActiveConnection = cn
rs.Open "SELECT * FROM Userpass.db", rs.ActiveConnection


зачем вот это
Set Cmd.ActiveConnection = cn
Dim Prm As ADODB.Parameter
...
Рейтинг: 0 / 0
18.01.2006, 11:27:59
    #33488924
Coolagin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Да это я случайно зацепил их.


Теперь:
cn.Open "Provider=MSDASQL.1;Persist Security Info=False;Mode=Read;Extended Properties='DSN=Paradox;DBQ=C:\1;DefaultDir=C:\1;DriverId=538;FIL=Paradox 7.X;MaxBufferSize=2048;PageTimeout=600;';Initial Catalog=C:\1"
rs.ActiveConnection = cn
rs.Open "SELECT * FROM Userpass.db", cn
rs.AddNew
rs.Fields("Login").Value = "qqq"
rs.Update
Set DataGrid1.DataSource = rs

И ошибка "При выполненении многошаговой операции"
...
Рейтинг: 0 / 0
18.01.2006, 11:34:25
    #33488942
Worobjoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Вот такая инструкция:
Код: plaintext
rs.Open "SELECT * FROM Userpass.db", cn
откроет рекордсет ForwardOnly и ReadOnly
Гриду нельзя давать рекордсет ForwardOnly
Откройте рекордсет например так:
Код: plaintext
rs.Open "SELECT * FROM Userpass.db", cn, adOpenStatic,adLockOptimistic, adCmdText
...
Рейтинг: 0 / 0
18.01.2006, 12:08:06
    #33489054
TIKO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
используй комманд для ввода данных


Dim s1 As New Command
s1.ActiveConnection = cn
s1.CommandType = adCmdText
s1.CommandText = "insert into имятаблицы (login) values('qqq)"
s1.Execute
...
Рейтинг: 0 / 0
18.01.2006, 13:53:53
    #33489417
Coolagin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Блин не выходит пишет "Слишком мало параметров.Требуется 1"

s1.ActiveConnection = cn
s1.CommandType = adCmdText
s1.CommandText = "insert into userpass(login) values(qqq)"
s1.Execute
...
Рейтинг: 0 / 0
18.01.2006, 14:00:13
    #33489433
TIKO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
"insert into userpass(login) values(qqq)"
если Login текстовое поле то вводимое значение должно быть в одинарных ковычаках 'qqq'
если числовое то просто число
...
Рейтинг: 0 / 0
18.01.2006, 14:15:44
    #33489478
Coolagin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Требовал "Обновляемый запрос в оперыции"Я написал:

s1.CommandText = "insert into userpass(Login) values('qqq') update "

Начал просить (;) в конце SQL запроса:

s1.CommandText = "insert into userpass(Login) values('qqq') update; "

Не помогает.
...
Рейтинг: 0 / 0
18.01.2006, 14:19:45
    #33489492
TIKO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
CoolaginТребовал "Обновляемый запрос в оперыции"Я написал:

s1.CommandText = "insert into userpass(Login) values('qqq') update "

Начал просить (;) в конце SQL запроса:

s1.CommandText = "insert into userpass(Login) values('qqq') update; "

Не помогает.
убери update


s1.CommandText = "insert into userpass(Login) values('qqq')" и все
...
Рейтинг: 0 / 0
18.01.2006, 14:21:50
    #33489501
Coolagin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
s1.CommandText = "insert into userpass(Login) values('qqq')"

"В операции должен использоваться обновляемый запрос"
...
Рейтинг: 0 / 0
18.01.2006, 14:31:09
    #33489527
TIKO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
впиши весь код
...
Рейтинг: 0 / 0
18.01.2006, 14:32:41
    #33489533
Coolagin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim s1 As New Command
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
rs.LockType = adLockBatchOptimistic
rs.CursorType = adOpenDynamic
cn.CursorLocation = adUseClient
cn.Open "Provider=MSDASQL.1;Persist Security Info=False;Mode=Read;Extended Properties='DSN=Paradox;DBQ=C:\1;DefaultDir=C:\1;DriverId=538;FIL=Paradox 7.X;MaxBufferSize=2048;PageTimeout=600;';Initial Catalog=C:\1; UserID = Alexey; Password = COOLagin"
rs.ActiveConnection = cn
rs.Open "SELECT * FROM Userpass.db", cn, adOpenDynamic
s1.ActiveConnection = cn
s1.CommandType = adCmdText
s1.CommandText = "insert into userpass(Login) values('qqq')"
s1.Execute
...
Рейтинг: 0 / 0
18.01.2006, 14:54:45
    #33489596
TIKO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Dim cn As ADODB.Connection
Dim s1 As New Command
Set cn = New ADODB.Connection


cn.Open "Provider=MSDASQL.1;Persist Security Info=False;Mode=Read;Extended Properties='DSN=Paradox;DBQ=C:\1;DefaultDir=C:\1;DriverId=538;FIL=Paradox 7.X;MaxBufferSize=2048;PageTimeout=600;';Initial Catalog=C:\1; UserID = Alexey; Password = COOLagin"

s1.ActiveConnection = cn
s1.CommandType = adCmdText
s1.CommandText = "insert into userpass(Login) values('qqq')"
s1.Execute

введи это процедуру при клике кнопки
...
Рейтинг: 0 / 0
18.01.2006, 14:57:49
    #33489606
Coolagin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Без вариантов.Не катит
...
Рейтинг: 0 / 0
18.01.2006, 15:02:49
    #33489615
Melkiades
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
CoolaginБез вариантов.Не катит
Молодой человек, может вы все-таки книжки почитаете?
Вам и так уже все здесь разжевали.
...
Рейтинг: 0 / 0
18.01.2006, 15:10:07
    #33489637
Coolagin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Either BOF or EOF is True
Melkiades CoolaginБез вариантов.Не катит
Молодой человек, может вы все-таки книжки почитаете?
Вам и так уже все здесь разжевали.

А что вы думаете поможет.Я смотрю вам Melkiades не помогает, а я же тоже человек.Вывод..........
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Either BOF or EOF is True / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]