Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ADODB MySQL ODBC на Visual Basic помогите кто чем сможет / 18 сообщений из 18, страница 1 из 1
31.07.2010, 22:58
    #36769759
Siompc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Подскажите как в visual basic 2005 отправить запрос в mysql и извлечь информацию из нужной ячейки в таблице?

Cnn = New ADODB.Connection
Rec = New ADODB.Recordset
Cmd = New ADODB.Command

strConn = "DRIVER=MySQL ODBC 5.1 Driver;SERVER=localhost;DataBase=test;UID=root;PWD=BazaFS_s"

Cnn.ConnectionString = strConn
Cnn.Open()

Rec = New ADODB.Recordset
Rec = Cnn.Execute("SELECT * FROM test2")

Do While Not Rec.EOF
DataGridView1.DataSource = Rec
Rec.MoveNext()
Loop

Rec.Close() : Rec = Nothing
Cnn.Close() : Cnn = Nothing

Даже если вывести всю таблицу в DataGridView1, ничего не произойдет. Что делать?
...
Рейтинг: 0 / 0
31.07.2010, 23:39
    #36769778
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Siompc,
этот код у вас на visual basic 6 же ,причем тут visual basic 2005?
...
Рейтинг: 0 / 0
01.08.2010, 00:03
    #36769788
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Siompc,
Код: plaintext
Rec = Cnn.Execute("SELECT вашеполе FROM test2 >>>where id=значение ваше<<<")
в запросе укажите ваше поле откуда берете значение и номер строки ,посмотрите как у вас это поле называется , у меня id, в итоге получите нужную ячейку
и вместо этого
Код: plaintext
1.
2.
3.
4.
Do While Not Rec.EOF
DataGridView1.DataSource = Rec
Rec.MoveNext()
Loop
попробуйте так
Код: plaintext
1.
2.
Set DataGridView1.DataSource = Rec
DataGridView1.ReBind
и это тоже вставьте
Код: plaintext
1.
Cnn.CursorLocation = adUseClient
...
Рейтинг: 0 / 0
01.08.2010, 01:15
    #36769812
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
SiompcПодскажите как в visual basic 2005 отправить запрос в mysql и извлечь информацию из нужной ячейки в таблице?
Сначала правильный синтаксис, потом дальнейшие вопросы (если останутся)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
        Set Cnn = New ADODB.Connection
        Set Rec = New ADODB.Recordset
        Set Cmd = New ADODB.Command

        strConn = "DRIVER=MySQL ODBC 5.1 Driver;SERVER=localhost;DataBase=test;UID=root;PWD=BazaFS_s"

        Cnn.ConnectionString = strConn
        Cnn.Open()

        'Rec = New ADODB.Recordset >>>повтор<<<
        Set Rec = Cnn.Execute("SELECT * FROM test2")

        'Do While Not Rec.EOF
            Set DataGridView1.DataSource = Rec
        '    Rec.MoveNext()
        'Loop

        Rec.Close() : Set Rec = Nothing
        Cnn.Close() : Set Cnn = Nothing
...
Рейтинг: 0 / 0
01.08.2010, 01:17
    #36769815
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Siompcvisual basic 2005
А, кстати, с этим вообще-то сюда
...
Рейтинг: 0 / 0
01.08.2010, 01:19
    #36769817
Siompc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Visual basic 2005!!! Никакой не 6! Все отлично с синтаксисом
...
Рейтинг: 0 / 0
01.08.2010, 01:21
    #36769818
Siompc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
В 2005 не поддерживается уже set. Он устарел. Да и вообще 6 устарел.
...
Рейтинг: 0 / 0
01.08.2010, 01:23
    #36769820
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
SiompcВ 2005 не поддерживается уже set. Он устарел. Да и вообще 6 устарел.
Ну устарел, так зачем вы сюда пришли? Мы тоже тут все устарели. Спрашивайте в ветке .NET
...
Рейтинг: 0 / 0
01.08.2010, 01:23
    #36769821
Siompc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
adUseClient - не идет. Пишет не обьявлено.
...
Рейтинг: 0 / 0
01.08.2010, 01:26
    #36769822
Siompc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
rs.Open("SELECT ID FROM test2 where id=2", Cnn)
выдало ошибку...
В экземпляре объекта не задана ссылка на объект.

((( Ужас. Вроде обычная БД, а обращатся так тяжело
...
Рейтинг: 0 / 0
01.08.2010, 01:58
    #36769837
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Siompc,
Код: plaintext
rs.Open strquery, conn
попробуйте так
...
Рейтинг: 0 / 0
01.08.2010, 01:59
    #36769839
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Siompc,
Siompc((( Ужас. Вроде обычная БД, а обращатся так тяжело
ниче тяжелого также как и к другой субд обращайтесь
а вообще код приведите ваш заново
...
Рейтинг: 0 / 0
01.08.2010, 13:04
    #36769954
Siompc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Dim Cnn = New ADODB.Connection
Dim Rec = New ADODB.Recordset
Dim Cmd = New ADODB.Command

strConn = "DRIVER=MySQL ODBC 5.1 Driver;SERVER=localhost;DataBase=test;UID=root;PWD=BazaFS_s"

Cnn.ConnectionString = strConn
Cnn.Open()

rs.Open("SELECT ID FROM test2 where id=2", Cnn)
T1.Text = rs
T1.Text = rs.Fields.Count

'====== Если вывести попробовать одну ячейку в текстбокс, выдает не найдена ссылка на объект... а если так:


Rec = Cnn.Execute("SELECT ID FROM test2 where id=2")

Do While Not Rec.EOF
DataGridView1.DataSource = Rec
Rec.MoveNext()
Loop

Rec.Close() : Rec = Nothing
Cnn.Close() : Cnn = Nothing

'====== Тогда дата остается пустой. Ничего не заполняется. Но мне лучше не со всей таблицей работать, а с отдельными ячейками... и ничего не получается.
'====== rs.Open(strquery, conn) ошибка. strquery - не задана...
...
Рейтинг: 0 / 0
01.08.2010, 13:11
    #36769958
Siompc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Вот если такой код:


Dim Cnn = New ADODB.Connection
Dim Rec = New ADODB.Recordset
Dim Cmd = New ADODB.Command

strConn = "DRIVER=MySQL ODBC 5.1 Driver;SERVER=localhost;DataBase=test;UID=root;PWD=BazaFS_s"

Cnn.ConnectionString = strConn
Cnn.Open()

Rec = Cnn.Execute("SELECT ID FROM test2")
Do While Not Rec.EOF
ListBox1.Items.Add(Rec)
Rec.MoveNext()
Loop

Rec.Close() : Rec = Nothing
Cnn.Close() : Cnn = Nothing


Тогда в листбокс добавляет заместо числа какой то System.__ComObject
Что делать с ним, и как перевести его в число, понятия не имею
...
Рейтинг: 0 / 0
01.08.2010, 13:49
    #36769977
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Siompc,
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Dim cnn As ADODB.Connection
Dim rec As ADODB.Recordset
Dim strConn As String, strquery As String
Private Sub Command1_Click()
Set cnn = New ADODB.Connection
Set rec = New ADODB.Recordset

strConn = "DRIVER=MySQL ODBC 5.1 Driver;SERVER=localhost;DataBase=test;UID=root;PWD=BazaFS_s"
'strConn = "Driver={MySQL ODBC 3.51 Driver};Server=localhost;Database=it; User=root;Password=506;Option=3;"
cnn.ConnectionString = strConn
cnn.Open

strquery = "SELECT ID FROM test2 where id=2"

rec.Open strquery, cnn

T1.Text = "Значение поля ID " & rec.Fields("ID").Value & _
" кол-во записей: " & rec.Fields.Count

End Sub
код рабочий ,подправьте под себя
...
Рейтинг: 0 / 0
01.08.2010, 13:53
    #36769980
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Siompc,
SiompcТогда в листбокс добавляет заместо числа какой то System.__ComObject
Что делать с ним, и как перевести его в число, понятия не имею
Код: plaintext
List1.AddItem rec.Fields("ID").Value
...
Рейтинг: 0 / 0
01.08.2010, 14:10
    #36769988
Siompc
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
List1.AddItem rec.Fields("ID").Value - это помогло!!! СПАСИБО! :):):)
...
Рейтинг: 0 / 0
07.09.2010, 08:38
    #36833218
valdemar_ru
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADODB MySQL ODBC на Visual Basic помогите кто чем сможет
Имеется подключение к Mysql:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Private Sub Command1_Click()
Dim conn As ADODB.Connection
    Set conn = New ADODB.Connection
    conn.ConnectionString = "DRIVER=" & Text1.Text & ";" & _
                       "SERVER=" & Text2.Text & ";" & _
                       "DATABASE=" & Text3.Text & ";" & _
                       "UID=" & Text4.Text & ";" & _
                       "PASSWORD=" & Text5.Text & ";" & _
                       "OPTION=" & Text1.Text & ";"
      conn.Open      
End Sub
Если ввести неверно одно из значений(SERVER, DATABASE, UID, PASSWORD)
каждый раз появляется одна и та же ошибка:
Run-Time-Error ' 2147467259 (80004005)':
mysql odbc 3.51 driver access denied for user 'root'@'localhost' using password YES

Как определить каким именно значением вызвана эта ошибка ?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ADODB MySQL ODBC на Visual Basic помогите кто чем сможет / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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