|
подключение к базе MySQL из 1с | ☑ | ||
---|---|---|---|---|
0
ildarian
24.11.15
✎
14:10
|
Добрый день.
Пытаюсь подключится к не 1с-ной базе. Выдает ошибку. {Форма.Форма.Форма(6)}: Ошибка при вызове метода контекста (Open) Connection.Open(СокрЛП(СтрокаПодключения)); по причине: Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию Вот код. Код нагуглил, подскажите что тут не так. Connection = Новый COMОбъект("ADODB.Connection"); СтрокаПодключения = "DRIVER={MySQL ODBC 5.1 Driver};OPTION=3;DATABASE=" + "Имя базы" + ";PWD=" + "Пароль"+ ";PORT=;SERVER=" + "тут ip" + ";UID=" + "Пользователь" + ";"; Connection.Open(СокрЛП(СтрокаПодключения)); |
|||
1
Живой Ископаемый
24.11.15
✎
14:14
|
ну так нужно ж этот драйвер установить, он же сам от сырости не заведется
|
|||
2
ildarian
25.11.15
✎
10:46
|
Да, дело было в драйвере, спасибо.
Посвился ещё один вопрос. Мне нужно сделать запрос к этой базе. Я его делаю так: Connection.Execute("f_add_balance ('112233', 100, '112233')"); Ошибок нет. Как мне получить текст ответа на этот запрос. Он должен вернуть "ОК" или текст ошибки. |
|||
3
НЕА123
25.11.15
✎
11:02
|
(2)
Connection.Execute( ничего не возвращает? |
|||
4
Мэс33
25.11.15
✎
11:08
|
Посмотри, что у тебя в "f_add_balance"
|
|||
5
ildarian
25.11.15
✎
11:40
|
Если вычислить выражение
Connection.Execute(Стрзаменить("f_add_balance('112233', 100, '112233')",Символы.НПП,"")).Fields.Item то тут "ошибка чтения значения" |
|||
6
Горогуля
25.11.15
✎
11:42
|
(5) а как насчёт Connection.Execute("f_add_balance ('112233', 100, '112233')")?
|
|||
7
ildarian
25.11.15
✎
11:42
|
я не знаю где смотреть результат этого запроса
|
|||
8
ildarian
25.11.15
✎
11:43
|
(6) не понял вопроса
|
|||
9
Горогуля
25.11.15
✎
11:44
|
(8) эта хрень возвращает тебе рекордсет со всеми вытекающими. ну я так думаю
|
|||
10
Горогуля
25.11.15
✎
11:45
|
выясни что-нибудь про mysql+movenext
|
|||
11
Живой Ископаемый
25.11.15
✎
11:49
|
Подозреваю что таким образом ты вызывешь функцию, которая добавляет баланс. То есть апдейтит строчку в таблице. То есть после ее выполнения, ты должен выполнить селект к этой таблице.
|
|||
12
Живой Ископаемый
25.11.15
✎
11:51
|
Еще раз - селек таблице до, вызов функции, селект к таблице после. сравнение результат до и после. если он различный, значит балаонс добавился
|
|||
13
Горогуля
25.11.15
✎
11:52
|
(12) а текст ошибки откуда выдумать?
|
|||
14
Живой Ископаемый
25.11.15
✎
11:53
|
да
|
|||
15
Александр_
Тверь 25.11.15
✎
11:55
|
http://catalog.mista.ru/public/165027/
можешь юзать или исользовать как образец. |
|||
16
ildarian
25.11.15
✎
12:00
|
Моя задача вызвать эту функцию с переданными параметрами. Она должна вернуть значение ОК. Больше других запросов делать не нужно. Вопрос: где можно увидеть результат запроса?
|
|||
17
Живой Ископаемый
25.11.15
✎
12:02
|
2(16) Мое мнение - нигде. С Ораклом мы вроде помню как-то извращались, но приходилось в том числе и переписывать эти хранимые функции на стороне оркала. и я даже не знаю как именно это делалось. Вот сейчас мне например мое дежавю услужливо подсказывает, что чуваки райзили Ексепшен. Но не уврен, может это был всего лишь какой-то тупиковый путь...
|
|||
18
Живой Ископаемый
25.11.15
✎
12:04
|
но, желаю всяческой удачи в том. чтобы у тебя все получилось, и я оказался неправ.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |