Clarion и Firebird
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Clarion и Firebird
Помогите начинающему.
Clarion 8.0.8973
Firebird через ODBC.
Надо добавлять в цикле записи.
Если это делать при помощи ADD(file), получается очень долго.
Конструкция типа file{PROP:SQL} = 'INSERT INTO file VALUES (field1,field2)' выдает ошибку 'File System Error'.
Clarion 8.0.8973
Firebird через ODBC.
Надо добавлять в цикле записи.
Если это делать при помощи ADD(file), получается очень долго.
Конструкция типа file{PROP:SQL} = 'INSERT INTO file VALUES (field1,field2)' выдает ошибку 'File System Error'.
Re: Clarion и Firebird
'INSERT INTO file (field1,field2) VALUES (value,value)''INSERT INTO file VALUES (field1,field2)'
- Дед Пахом
- Старичок
- Сообщения: 3289
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 49 раз
- Контактная информация:
Re: Clarion и Firebird
Проверьте, что возвращает FILEERROR(). Да и неплохо бы сделать SETCLIPBOARD(file{PROP:SQL}) и выполнить скрипт непосредственно в какой-нибудь среде для FIREBIRD (я использую IBExpert, DbWorkbench, Firebird Maestro) для проверки корректности кода.
С уважением, ДП
Re: Clarion и Firebird
Стринговые значения и даты (для mssql) должны быть в кавычках . Лучше бы привели реальный код .Не прооходит.
Re: Clarion и Firebird
Спасибо всем за помощь. Вроде все получилось.
Команда INSERT заработала.
Однако это не решило главной проблемы - время загрузки данных не только не уменьшилось, а наоборот увеличилось.
В чем может быть дело ?
Команда INSERT заработала.
Однако это не решило главной проблемы - время загрузки данных не только не уменьшилось, а наоборот увеличилось.
В чем может быть дело ?
Re: Clarion и Firebird
Вы же пишете
У ODBC api свои команды и своя скорость . Найдите файл ODBC.INC и подключите odbcx.lib.
ну так и пользуйте ODBC api .Firebird через ODBC
У ODBC api свои команды и своя скорость . Найдите файл ODBC.INC и подключите odbcx.lib.
Re: Clarion и Firebird
Конструкция типа SQLPrepare(hstmt#,'INSERT INTO osmena ...',cbSqlStr#) дает ощибку "No matching prototype available", указывая на первую скобку.
В чем может быть дело ?
В чем может быть дело ?
Re: Clarion и Firebird
Я уже пару лет не работаю с win , могу приблизительно .
По моему где-то так , а вообще на форуме есть ветка mav ее ведет специалист по odbc .
Код: Выделить всё
aaaa procedure()
hdbc LONG
HSTMT LONG
OutStr cstring(255)
code
hdbc = file{PROP:HDBC} !у открытого файла берем hdbc
a# = SQLAllocStmt(hdbc, hstmt) !делаем hstmt
a# = SQLFreeStmt(hstmt, SQL_CLOSE) ! SQL_CLOSE и тд описано в odbc_equ.inc надо подключить
a# = SQLFreeStmt(hstmt, SQL_RESET_PARAMS)
OutStr = 'insert into....''
a# = SQLExecDirect(hstmt, OutStr, SQL_NTS) ! выполняем
- Дед Пахом
- Старичок
- Сообщения: 3289
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 49 раз
- Контактная информация:
Re: Clarion и Firebird
Не туда Вас занесло, не нужен никакой ODBC API (хоть я им и пользуюсь регулярно
).
Если задача состоит в быстром копировании, то надо просто сформировать правильный sql INSERT, который одним махом загрузит всё в БД.

Если задача состоит в быстром копировании, то надо просто сформировать правильный sql INSERT, который одним махом загрузит всё в БД.
С уважением, ДП
Re: Clarion и Firebird
Дело в том, что исходная таблица TPS ...Дед Пахом писал(а):Не туда Вас занесло, не нужен никакой ODBC API (хоть я им и пользуюсь регулярно).
Если задача состоит в быстром копировании, то надо просто сформировать правильный sql INSERT, который одним махом загрузит всё в БД.
-
- Старожил
- Сообщения: 280
- Зарегистрирован: 11 Февраль 2009, 8:41
- Откуда: г. Анапа
- Поблагодарили: 3 раза
Re: Clarion и Firebird
Купи у Андрея MAV и будет тебе счастье. Я, как стал его использовать, всякие TPS и DAT забыл, как страшный сон.
- Дед Пахом
- Старичок
- Сообщения: 3289
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 49 раз
- Контактная информация:
Re: Clarion и Firebird
Какая разница, в каком формате исходные данные? Вам-то нужен INSERT в целевую SQL таблицу, ведь так?George писал(а):Дело в том, что исходная таблица TPS ...
С уважением, ДП
Re: Clarion и Firebird
А как это сделать ?Какая разница, в каком формате исходные данные? Вам-то нужен INSERT в целевую SQL таблицу, ведь так?