Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите с recordset.open, выдает в datagrid только название полей и все. / 13 сообщений из 13, страница 1 из 1
17.02.2003, 09:21
    #32107086
dyo
dyo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
Может кто нибудь может объяснить почему в DataGride при использование recordset.open
не оттображается ничего, кроме названий полей???

Имеется Access база, две таблицы tabel1 и table2, даю код


Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim ssql As String
Set cnn = New ADODB.Connection
cnn.CursorLocation = adUseClient
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False; Data Source=C:\table1.mdb; Jet OLEDB:Database Password="
cnn.Open
Set rs = New ADODB.Recordset
rs.ActiveConnection = cnn
rs.Source = "select * From tName"
rs.Open
Set Me.DataGrid1.DataSource = rs


В датагриде ничего кроме названия полей, и еще если дать

Private Sub Form_Activate()
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim ssql As String
Set cnn = New ADODB.Connection
cnn.CursorLocation = adUseClient
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False; Data Source=C:\table2.mdb; Jet OLEDB:Database Password="
cnn.Open
Set rs = New ADODB.Recordset
rs.ActiveConnection = cnn
rs.Source = "select * From tPrice"
rs.Open
Set Me.DataGrid1.DataSource = rs
End Sub

ругается, говорит
The Microsoft Jet database engine cannot find the input tabel or query 'table2. Make sure it exists and that its name is spelle correctly.
Как я понимаю ругается мол, таблицы такой нема (дык есть она, а он не видит) , а почему :-(( ???
...
Рейтинг: 0 / 0
17.02.2003, 10:01
    #32107105
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
Имеется Access база, две таблицы tabel1 и table2, даю код
...
Data Source=C:\table1.mdb
Data Source=C:\table2.mdb


что то не совсем понятно, где одна база (?) и какие две таблицы (???)

select * From tName
select * From tPrice
...
Рейтинг: 0 / 0
17.02.2003, 12:30
    #32107247
dyo
dyo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
Прошу прощения, вношу поправку

Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim ssql As String
Set cnn = New ADODB.Connection
cnn.CursorLocation = adUseClient
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False; Data Source=C:\base.mdb; Jet OLEDB:Database Password="
cnn.Open
Set rs = New ADODB.Recordset
rs.ActiveConnection = cnn
rs.Source = "select * From tName"
rs.Open
Set Me.DataGrid1.DataSource = rs

и

Private Sub Form_Activate()
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim ssql As String
Set cnn = New ADODB.Connection
cnn.CursorLocation = adUseClient
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False; Data Source=C:\base.mdb; Jet OLEDB:Database Password="
cnn.Open
Set rs = New ADODB.Recordset
rs.ActiveConnection = cnn
rs.Source = "select * From tPrice"
rs.Open
Set Me.DataGrid1.DataSource = rs
End Sub
...
Рейтинг: 0 / 0
17.02.2003, 12:31
    #32107249
dyo
dyo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
Прошу прощения, вношу поправку

Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim ssql As String
Set cnn = New ADODB.Connection
cnn.CursorLocation = adUseClient
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False; Data Source=C:\base.mdb; Jet OLEDB:Database Password="
cnn.Open
Set rs = New ADODB.Recordset
rs.ActiveConnection = cnn
rs.Source = "select * From tName"
rs.Open
Set Me.DataGrid1.DataSource = rs

В датагриде, все равно ничего кроме названия полей, и еще если дать

Private Sub Form_Activate()
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim ssql As String
Set cnn = New ADODB.Connection
cnn.CursorLocation = adUseClient
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False; Data Source=C:\base.mdb; Jet OLEDB:Database Password="
cnn.Open
Set rs = New ADODB.Recordset
rs.ActiveConnection = cnn
rs.Source = "select * From tPrice"
rs.Open
Set Me.DataGrid1.DataSource = rs
End Sub

всеравно ругается
...
Рейтинг: 0 / 0
17.02.2003, 13:19
    #32107293
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
В датагриде, все равно ничего кроме названия полей
select * From tName

а в таблице tName есть записи ?

всеравно ругается
где и на что ? текст ошибки ?
...
Рейтинг: 0 / 0
18.02.2003, 07:24
    #32107652
dyo
dyo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
В том то и дело что записей валом в обоих таблицах но когда обращаешся к одной все нормально за исключением отсутствия записей, а вот когда обращаешся к другой таблице выдает :
The Microsoft Jet database engine cannot find the input tabel or query 'table2. Make sure it exists and that its name is spelle correctly.

В первом случае уже незнаю что делать, а вот во втором , думал сначала что имя таблицы указал с ошибкой, раз двадцать проверял все правельно :-((

Помогите пожалуйста
...
Рейтинг: 0 / 0
18.02.2003, 09:28
    #32107672
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
или ты что-то недоговариваешь, либо одно из двух

если за действительность брать твой последний пример, ну нет там вообще обращения к таблице table2

1. у тебя база данных c:\base.mdb ?
2. ты делаешь выборки из таблиц tName и tPrice ?
3. причем здесь таблицы table1 и table2 ???

посмотри внимательно на реальный текст программы. то, что ты здесь привел в 3-х экземплярах мало соответсвует действительности.
...
Рейтинг: 0 / 0
19.02.2003, 07:52
    #32108413
dyo
dyo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
кузя!!!
Спасибо за пристальное внимание, база действительно называется base, но с table1 и table2 ты правельно подметил, вобщем проблема такова в акцесовской базе base.mdb имеется две талицы tName и tPrice , с записями это точно, проблема в том что когда в rs.Source я задаю выборку из таблицы tName он выдает в дата грид только название полей и не одной записи, а вот ежели в том же месте , тот же rs.Source задать как выборку из таблици tPrice то он выдает ошибку : The Microsoft Jet database engine cannot find the input tabel or query tPrice. Make sure it exists and that its name is spelle correctly , выборку делаю самую простую (select * from <название таблицы>) ,безовсяких условий ,код пишу действительно такой

Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim ssql As String
Set cnn = New ADODB.Connection
cnn.CursorLocation = adUseClient
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False; Data Source=C:\base.mdb; Jet OLEDB:Database Password="
cnn.Open
Set rs = New ADODB.Recordset
rs.ActiveConnection = cnn
rs.Source = "select * From tPrice"
rs.Open
Set Me.DataGrid1.DataSource = rs
...
Рейтинг: 0 / 0
19.02.2003, 12:03
    #32108627
Шайтан
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
Попробуй после "Set Me.DataGrid1.DataSource = rs" обновить грид -
"Me.DataGrid1.Refresh"
...
Рейтинг: 0 / 0
19.02.2003, 13:31
    #32108703
кузя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
The Microsoft Jet database engine cannot find the input tabel or query tPrice. Make sure it exists and that its name is spelle correctly

в такой ситуации можно посоветовать, наверное, только проверить одинаковость написания имени таблицы tPrice

буквы 'P', 'с' и 'e' в базе и программе должны быть одновременно либо русскими либо английскими...
...
Рейтинг: 0 / 0
20.02.2003, 08:05
    #32109142
dyo
dyo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
Все буквы совпадают точно, постольку поскольку пробовал даже не руками вбивать названия таблиц, а копировал из акцесса в проект через буфер обмена, да и refresh тоже пробовал не помогает. Люди добрые объясните что же это за чудо такое и как его обойти.
...
Рейтинг: 0 / 0
20.02.2003, 12:41
    #32109355
1
1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
Попробуй повесить заполнение датагрида на события form_load. У меня в этом событии заполняется ListView / TreeView, на form_open не желают - выдается пустота

З.Ы. Кстати нафига вешать что-то на Form_Activation ?
...
Рейтинг: 0 / 0
28.02.2003, 01:23
    #32112422
Magnus23
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с recordset.open, выдает в datagrid только название полей и все.
Попробуй открывать рекордсет самым простым способом

Код: plaintext
rs.Open  "select * From tName"  , cnn,adOpenStatic


ИМХО дело в том что он по умолчанию открывается динамическим , а в этом случае естественно таблица будет пуста , курсор то серверный.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Помогите с recordset.open, выдает в datagrid только название полей и все. / 13 сообщений из 13, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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