Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Подключить запрос SQL к MSFlexGrid на MS VB 6.0 / 25 сообщений из 76, страница 1 из 4
15.08.2011, 13:23
    #37395722
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Добрового всем времени суток.
Помогите начинающему пользователю!
Есть два MSFlexGrid с двумя разными наборами дисциплин. Необходимо с помощью запроса найти неповторяющиеся дисциплины и поместить их в третий MSFlexGrid. Работаю на MS Visual Basic 6.0. Пыталась сделать вот так:

Private Sub Form_Load()
Dim dbs As DAO.Database
Dim rst As DAO.Recordset
Dim strSQL As String

Set dbs = DBEngine(0).OpenDatabase("D:\Диссертация\Работа в VB6\Базы данных\RYP.mdb")
strSQL = "SELECT RYP.[Название дисциплины],RYP1.[Название дисциплины] FROM RYP,RYP1"
Set rst = dbs.OpenRecordset(strSQL)
Set MSFlexGrid4.DataSource = rst
End Sub

но прога ругается на Set MSFlexGrid4.DataSource = rst и пишет Error 91 Object variable or With block variable not set.

Подскажите как устранить ошибку, если можно напишите код!
...
Рейтинг: 0 / 0
15.08.2011, 13:41
    #37395759
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Читаем хелп:

datasource
An object reference that qualifies as a data source, including ADO Recordset objects, and classes or user controls defined as data sources (DataSourceBehavior property = vbDataSource).

То бишь DAO тут не катит, либо надо отказывать от DAO, либо заполнять рекордсет в цикле
...
Рейтинг: 0 / 0
15.08.2011, 13:47
    #37395770
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
А не подскажите как это сделать. Ато я всего неделю как работаю на VB.
...
Рейтинг: 0 / 0
15.08.2011, 15:13
    #37395922
ZezaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
gill87..Есть два MSFlexGrid..а эти Грид'ы - заполняются корректно?
...
Рейтинг: 0 / 0
15.08.2011, 15:19
    #37395943
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
ZezaM,
Если честно, то не уверена. Я очень мало знаю по VB 6.0. Извините за откровенный бред!
...
Рейтинг: 0 / 0
15.08.2011, 15:29
    #37395964
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Попробовала вот так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
Private Sub Form_Load()
Dim conn As New ADODB.Connection
Dim SourceBase As ADODB.Connection
    SourceBase = "D:\...."
    ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & SourceBase & ";Persist Security Info=False"
    conn.Open ConnString
    
Dim rs As New ADODB.Recordset

    rs.CursorLocation = adUseClient
    rs.CursorType = adOpenDynamic
    rs.LockType = adLockOptimistic

SQL = "SELECT RYP.[Название дисциплины],RYP1.[Название дисциплины]" & _
"FROM RYP,RYP1" & _
"WHERE RYP.[Название дисциплины] <> RYP1.[Название дисциплины];"
rs.Open SQL, conn

If rs.RecordCount <>  0  Then
    Do Until rs.EOF = True
    End If

    conn.Execute SQL
    rs.MoveNext
    Loop
End If
rs.Close
conn.Close

End Sub

теперь ругается на ConnString = и пишет Variable not defined.
...
Рейтинг: 0 / 0
15.08.2011, 15:46
    #37396004
ZezaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
gill87Добрового всем времени суток...
Есть два MSFlexGrid с двумя разными наборами дисциплин.... эти гриды -(чем нужно) заполняются?
Если -Да ->
-> как Вы это делаете?
...
Рейтинг: 0 / 0
15.08.2011, 15:48
    #37396009
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
gill87теперь ругается на ConnString = и пишет Variable not defined.
Потому что нужно объявить эту переменную с помощью Dim

кроме того, у вас там явная путаница:

IF
DO
END IF
LOOP
...
Рейтинг: 0 / 0
15.08.2011, 15:49
    #37396015
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
ZezaM,

Gridы подключены к базе данных MS Access
...
Рейтинг: 0 / 0
15.08.2011, 15:52
    #37396026
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Поправила

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
Private Sub Form_Load()
Dim conn As New ADODB.Connection
Dim SourceBase As ADODB.Connection
Dim ConnString As MSFlexGrid
Dim SQL As String
    SourceBase = "D:\...."
    ConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & SourceBase & ";Persist Security Info=False"
    conn.Open ConnString
    
Dim rs As New ADODB.Recordset

    rs.CursorLocation = adUseClient
    rs.CursorType = adOpenDynamic
    rs.LockType = adLockOptimistic

SQL = "SELECT RYP.[Название дисциплины],RYP1.[Название дисциплины]" & "FROM RYP,RYP1" & "WHERE RYP.[Название дисциплины] <> RYP1.[Название дисциплины];"
rs.Open SQL, conn
    Do Until rs.EOF = True
    conn.Execute SQL
    rs.MoveNext
    Loop
rs.Close
conn.Close

End Sub

но выдает ошибку SQL= Error91 Object variable or With block variable not set
...
Рейтинг: 0 / 0
15.08.2011, 16:09
    #37396086
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
gill87,
Ой извините ошиблась ругается на эту строку SourceBase = "D:\...."
...
Рейтинг: 0 / 0
15.08.2011, 16:24
    #37396133
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
gill87gill87,
Ой извините ошиблась ругается на эту строку SourceBase = "D:\...."

Вы ее объявляете как:
Код: plaintext
Dim SourceBase As ADODB.Connection
А потом пытаетесь присвоить ей текст
Код: plaintext
SourceBase = "D:\...."
...
Рейтинг: 0 / 0
15.08.2011, 16:25
    #37396138
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Shocker.Pro,

А что же делать?
...
Рейтинг: 0 / 0
15.08.2011, 16:27
    #37396146
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
На самом деле задача тривиальная, на нее надо потратить минут 10, я тут в режиме "одним глазком", вечером если будет время - сделаю, или Скукотища, как обычно, сделает.

НО
вы явно очень сильно плаваете, и если всего неделю, как видите ВБ, может вам что-нибудь попроще пока поделать, почитать учебник, порешать простые примеры из него, понять типы данных, циклы и т.п....
...
Рейтинг: 0 / 0
15.08.2011, 16:31
    #37396160
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Shocker.Pro,

Спасибо что согласились помочь. Я бы не стала лезть в чужеродный мне язык, но мой "научный" требует в одну душу на VB и побестрее. Так что извините за глупые вопросы и жалкие попытки. Делаю все интуитивно.
...
Рейтинг: 0 / 0
15.08.2011, 16:34
    #37396168
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
gill87 в чужеродный мне язык,
а родной какой?
...
Рейтинг: 0 / 0
15.08.2011, 16:35
    #37396173
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Shocker.Pro,

С++. Но года 2 не писала на нем!
...
Рейтинг: 0 / 0
15.08.2011, 20:16
    #37396594
ZezaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
gill87... Gridы подключены к базе данных MS Access - понятно :)
боюсь - туплю... :((
как Вы заполняете первые два?
...
Рейтинг: 0 / 0
15.08.2011, 20:20
    #37396601
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
ZezaM,
Через компонент Data.
...
Рейтинг: 0 / 0
15.08.2011, 20:31
    #37396610
ZezaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
gill87Через компонент Data. ...боюсь - туплю...
их у Вас сколько на Форме?
...
Рейтинг: 0 / 0
15.08.2011, 20:34
    #37396613
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
ZezaM,

Три
...
Рейтинг: 0 / 0
15.08.2011, 20:38
    #37396619
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Стоп, если два заполняются неким способом, что мешает тем же способом заполнить третий?
...
Рейтинг: 0 / 0
15.08.2011, 20:41
    #37396624
gill87
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
Shocker.Pro,

Этим способом не выполняется запрос.
...
Рейтинг: 0 / 0
15.08.2011, 20:46
    #37396628
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
А можно поподробнее? Потому что можно, конечно, наворочать тут сейчас еще и ADO, но если DAO уже используется, то лучше его применить и не плодить разнотипной работы с БД.
...
Рейтинг: 0 / 0
15.08.2011, 20:48
    #37396631
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подключить запрос SQL к MSFlexGrid на MS VB 6.0
А совсем хорошо бы тестовый проект (без лишнего) с тестовой же базой сюда выложить - можно было бы что-нить быстро там поправить.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Подключить запрос SQL к MSFlexGrid на MS VB 6.0 / 25 сообщений из 76, страница 1 из 4
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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