English version Russian version

Хотите задействовать выполнение SQL-скриптов в своих программах и тратить меньше времени на утомительное кодирование?

Хотите в одной команде создать таблицу, генератор, триггер, добавить данные в таблицу, сделать выборку и потом все это удалить?
Теперь это возможно с новым IBProvider!

В новом IBProvider v.3.3.0.11117 реализована возможность выполнения команды с несколькими SQL-запросами (SQL-скрипты). Например:

set autoddl on;
set transaction;
create generator GEN_ID_TEST_TABLE;
create table TEST_TABLE (ID INTEGER NOT NULL PRIMARY KEY,TEXT BLOB SUB_TYPE TEXT);
create trigger BI_TEST_TABLE for TEST_TABLE
 before insert
 as
 begin
  if(NEW.ID IS NULL) then NEW.ID=GEN_ID(GEN_ID_TEST_TABLE,1);
 end;
insert into TEST_TABLE (text) values('record 1');
insert into TEST_TABLE (text) values('record 2');
set term !!;
select * from TEST_TABLE!!
set terminator ;!!
TEST_TABLE;
set autoddl off;
drop table TEST_TABLE;
drop generator GEN_ID_TEST_TABLE;
commit;

Добавлена поддержка специальных команд:

  • SET {TERM|TERMINATOR} <new_stmt_terminator_string>. Добавлено для совместимости с ISQL. Новый терминатор действителен только в рамках текущего скрипта.
  • SET AUTODDL {ON|OFF}. Если включено, то последующие DDL команды будут подтверждаться (commit) автоматически. Задаваемый режим действует только в рамках текущего скрипта. Если в скрипте отсутствует данная инструкция, то начальное состояние определяется значением свойства auto_commit_ddl.

Поддерживаются ли запросы, возвращающие данные клиенту?

Если в скрипте встречается запрос, возвращающий множество, то IBProvider осуществит закачку всех рядов (включая BLOB-поля и массивы) на клиента. В случае необходимости, для хранения больших множеств будут задействованы временные файлы. После завершения выполнения команды вы можете получить доступ к загруженным данным.

Что произойдет, если в скрипте встретятся несколько запросов, возвращающих данные?

Провайдер предоставляет возможность перебирать результаты выполнения каждого запроса.

При работе с Firebird/Interbase через ADODB для этого следует использовать методом Recordset.NextRecordset. Если запрос завершился по ошибке, то Recordset.NextRecordset выбросит исключение, которое можно перехватить и обработать. Если запрос не возвращает множество, то свойство Recordset.State будет равным нулю (adStateClosed). После перебора всех результатов, Recordset.NextRecordset вернет Nothing.

При работе с Firebird/Interbase через ADO.Net для загрузки данных из нескольких множеств следует воспользоваться методом OleDbDataAdater.Fill(dataset).

При работе с Firebird/Interbase через OLEDB интерфейсы, следует запросить результат работы команды в виде объекта с интерфейсом IMultipleResults.

Какие ограничения существуют на работу с SQL-скриптами?

На текущий момент, IBProvider нельзя задавать параметры команд для SQL-скриптов. Данная возможность появится в следующих выпусках.

Можно ли продолжить выполнение скрипта, если произошла ошибка в одном из запросов?

Да это возможно через свойство инициализации. По-умолчанию, если возникает ошибка, то IBProvider остановит выполнение команды. Это поведение можно изменить, установив новое свойство инициализации и команды multi_stmts_exec_rules равным 1. В этом случае провайдер сохранит описание ошибки и продолжит выполнение запросов.

3 Преимущества, которые вы получите, если воспользуетесь новым IBProvider!

1. Вы сможете встроить выполнение SQL-скриптов во все свои программы

Теперь стало очень легко реализовать выполнение SQL-скриптов в отдельном окне вашего приложения. Просто добавьте на форму Memo-поле и кнопку Execute и передайте текст скрипта в IBProvider. Остальное сделает наш драйвер:

  • Разберет запросы на DDL/DML
  • Подготовит и выполнит ваши команды
  • Передаст вам текст сообщения в случае ошибки в запросе или в процессе выполнения
  • Вернет результирующие множества, полученные в результате выполнения команд. Все что вам останется, просто вывести загруженные данные в Grid (таблицу)

Эта функция отлично подойдет, для внесения исправлений в рабочую систему, когда под рукой есть только компьютер конечного пользователя и нет полноценного редактора БД. Вы можете снабдить этой функцией все свои программы. Особенно это подойдет для тех, кто любит дорабатывать систему уже на рабочей базе данных.

2. Вы сможете писать заметно меньше кода

Раньше необходимо было для каждой SQL-инструкции создавать и настраивать отдельную команду. Теперь всю логику функции работы с БД можно реализовать в одном месте, написав скрипт из нескольких SQL-команд. Это позволит Вам значительно сократить время на написание приложений.

3. Вы сможете вынести администрирование баз Firebird и Interbase на новый уровень

Наборы скриптов для администрирования БД (переносы, merge, репликация) - все это стало гораздо проще. Вы можете выполнять SQL-команды пачками прямо из скриптов на VBScript, на любом компьютере под управлением Windows.

Сэкономьте себе кучу времени - назначьте выполнение таких скриптов по расписанию и, получайте, к примеру, отчеты о выполнении скриптов по электронной почте.




Внимание: Помимо новейшего драйвера, вы ГАРАНТИРОВАНО получите все последующие версии в течение года абсолютно БЕСПЛАТНО!

Забобрить эту страницу! Добавить на Memori.ru Mr Wong Добавить в закладки МоёМесто.ru Добавить на Rumarkz Добавить на Rucity Digg It Reddit Technorati Del.icio.us Google Bookmarks Slashdot StumbleUpon Yahoo MyWeb Все

Дата публикации: 16.11.2010. Права на материал принадлежат: IBProvider. При перепечатке ссылка на сайт http://www.ibprovider.com обязательна. Версия для печати: Хотите задействовать выполнение SQL-скриптов в своих программах и тратить меньше времени на утомительное кодирование?

Все новости IBProvider:
14.05.2012 IBProvider 3.10.1. Поддержка зашифрованных баз данных Interbase XE. Внутренние изменения.
16.02.2012 IBProvider 3.10. Улучшена поддержка MS DTS и SSIS. Исправление ошибок.
15.11.2011 В новом IBProvider 3.9.4 улучшена совместимость с .NET. Исправлены известные ошибки.
23.09.2011 Новый IProvider v.3.9.1 стал еще быстрее.
22.08.2011 Новая версия IBProvider v.3.9 поставляется с гарантией(!) стабильной работы в составе круглосуточно функционирующих систем.
07.06.2011 IBProvider v3.8.2. А ваши компоненты доступа готовы для Firebird 3?
11.05.2011 IBProvider v3.8. UDF в схемах метаданных. Настройка параметров изоляций транзакций. Новый "Free".
03.04.2011 IBProvider v3.7. Поддержка BOOLEAN [Firebird v3].
03.03.2011 IBProvider v3.6. Новые интерфейсы набора рядов и схема метаданных.
14.02.2011 IBProvider v3.5. Поддержка Firebird 2.5.1. Улучшена генерация SQL-запросов. Поддержка параметров в SQL-скриптах.
14.01.2011 4 ключевых отличия нового IBProvider v3.4, которые делают ваши приложения еще быстрее
18.12.2010 В новой версии IBProvider добавлена поддержка кодовой страницы BASE64 из новой версии InterBase XE, улучшены алгоритмы, снижены требования к памяти, а так же исправлены ошибки
16.11.2010 Хотите задействовать выполнение SQL-скриптов в своих программах и тратить меньше времени на утомительное кодирование?
11.11.2010 Хотите получить полнофункциональный IBProvider 64/32 в подарок? Участвуйте в нашем конкурсе!
20.10.2010 Вы используете TIME и TIMESTAMP в своих приложениях? Новая версия IBProvider сделает вашу работу еще проще.
16.09.2010 В новой версии IBProvider добавлен новый интерфейс, реализована возможность корректной работы через MS SQL с регистрозависимыми названиями объектов БД.
26.08.2010 Скачайте финальную сборку IBProvider Professional v3(!).
08.07.2010 Доступна новая версия IBProvider Professional v3 RC5 с поддержкой обновляемых множеств.
11.06.2010 Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.
07.05.2010 Новая версия IBProvider 3.0.0.9496 доступна для скачивания. Обновлен парсер параметров запросов и улучшен механизм блокировки COM-Объектов.
19.04.2010 Изменения в парсере SQL-запросов. Поддержка SQLSTATE и NativeError.
15.03.2010 Три причины, по которым Вам стоит перейти на новый IBProvider
14.02.2010 Успейте получить бесплатную лицензию на IBProvider Professional v.3.0.00.8628
18.01.2010 Сегодня IBProvider исполнилось 10 лет. Представляем новую юбилейную версию IBProvider с улучшенной поддержкой DDL и обновляемых множеств.
15.12.2009 Публикация текстов хранимых процедур в схеме метаданных PROCEDURES
16.11.2009 Производительность новой версии IBProvider возросла в 4,5 раза
07.10.2009 IBProvider 3.0.0.7798. Улучшена работа с большими объемами данных.
13.08.2009 В новом IBProvider 3.0.0.7575 реализован пул запросов и улучшена работа с Delphi.
10.07.2009 IBProvider теперь поддерживает несколько способов передачи NULL.
04.07.2009 В новой версии IBProvider реализована эмуляция типов BOOLEAN и GUID при работе с Firebird и Interbase.
11.06.2009 В новой версии IBProvider добавлена возможность отмены выполнения команд, а так же поддерживается новый тип запросов Firebird 2.5 с SQL_NULL.
05.05.2009 Возможность работать с типом TIME через MS SQL Linked Server.
17.04.2009 16 версий Firebird и Interbase теперь доступны для записи через MS SQL Linked Server на 64-битных платформах.
05.03.2009 В IBProvider v3 Release Candidate 4 улучшена поддержка Visual Studio 2008 DDEX, оптимизирована работа с именованными параметрами. Доступ к метаданными возможен в пользовательской кодировке.
16.02.2009 С новым IBProvider возможна полноценная работа в Unicode-приложениях, улучшена работа с кодировкой NONE, поддерживаются маркеры кодовых страниц.
12.01.2009 В IBProvider v3 разработан принципиально новый механизм работы с кодовыми страницами текстовых данных Firebird и Interbase.
06.11.2008 Новый IBProvider - поддержка 49 кодовых страниц, возможность работы без регистрации провайдера, предотвращение утечки памяти в Firebird клиенте.
03.10.2008 В новой версии IBProvider Professional Edition добавлено 7 кодовых страниц, исправлены ошибки, улучшен механизм работы с памятью и доступ к BLOB-полям
25.08.2008 6 мировая конференция по Firebird пройдет в Бергамо с 25 по 27 сентября 2008 года. Открыта регистрация
30.07.2008 Доступны новые версии IBProvider. Улучшена работа с NUMERIC-типами и с пулом подключений. В схемах метаданных добавлена поддержка внешних и временных таблиц. В 2,5 раза повышена производительность с отключенным кешем метаданных.
08.07.2008 Выпущен IBProvider Release Candidate 3. Поддержка аутентификации Windows для Firebird 2.1, поддержка длинных имен и Boolean типа для Interbase 7 и Interbase 2007, и т.д.
17.06.2008 Новые версии IBProvider. Поддержка бинарных данных и кодовой страницы OCTETS, 64 битные колонки в схемах метаданных, релиз конвертора типов.
12.05.2008 Доступны новые версии IBProvider. Полностью обновлен конвертор типов.
07.04.2008 Новый IBProvider v3 для 64 битных ОС.
11.03.2008 Новая версия IBProvider v.3.0 RC2 [buid 3965].
08.02.2008 Улучшена поддержка Visual Studio 2008, исправлена работа с DTC, исправлены ошибки и улучшена совместимость с различными серверами Firebird и Interbase.
26.12.2007 Изменились лицензии на IBProvider, а так же появилась возможность покупать IBProvider со скидкой.
08.11.2007 23 ноября 2007 года в Москве пройдет вторая российская конференция по Firebird и Interbase. Специальная акция для участников.
30.10.2007 Новая версия IBProvider Free Edition (3.0.0.3313 Release Candidate 2 [RC2]).
29.10.2007 Новая версия IBProvider v3 Release Candidate 2 (RC2).
18.10.2007 Новая версия IBProvider Professional Edition. Улучшена интеграция с Microsoft Office. Исправлены известные ошибки.
13.09.2007 Новые версии провайдеров в составе IBProvider Professional теперь могут работать в среде Microsoft SQL Server 2005 Business Intelligence Development Studio.
20.07.2007 Выпущены редакции IBProvider Professional Edition и IBProvider Free Edition поддерживающие Firebird 2.1.
25.05.2007 Возобновлена работа механизма скачиваний. Персональная доставка новых версий будет более оперативной.
27.04.2007 Новые редакции IBProvider Professional и IBProvider Free уже на сайте!
13.12.2006 Новая версия библиотеки классов C++ для работы с OLEDB провайдерами. Реализована поддержка Unicode проектов.
04.12.2006 Опубликованы последние релизы: IBProvider Professional Edition - профессиональное решение для создания приложений баз данных для Interbase и Firebird. IBProvider Free Edition - обновленная бесплатная версия на базе третьей версии IBProvider
07.10.2006 Новые версии IBProvider 3.0.0.2385 [RC1] и IBProvider 2.5.0.2088 [Релиз]. Добавлены псевдонимы Charset, PSWD. Оптимизация чтения метаданных и парсера SQL запросов. Поддержка работы с массивами в ADO .Net.
28.08.2006 Новые версии провайдеров: IBProvider 3.0.0.2065 [Beta] и IBProvider 2.4.7.2034 [Релиз]. Улучшенная интеграция с MSSQL 2000/2005.
13.08.2006 IBProvider 3.0.0.1959 [Beta]. IBProvider 2.4.6.1989 [Релиз]. Библиотека классов C++ для работы с OLEDB провайдерами теперь поддерживает VC8 (VS2005).
25.05.2006 IBProvider 3.0.0.1324 [Beta]. IBProvider 2.4.5.1953 [Релиз]. Клиентская библиотека для C++.
05.05.2006 Изменение цены на IBProvider. Доступны новые демо версии
30.03.2006 IBProvider release v.2.4.4 (v.1.7.26) сборка 1885. IBProvider v.3 [сборка 1107 бета]
27.02.2006 IBProvider v.1/v.2 [cборка 1877 Release Candidate 1]. IBProvider v.3 [сборка 1062. бета]
30.11.2005 IBProvider 2.4.3.1859. Релиз.
01.11.2005 Решение проблемы с арифметическими ошибками в .NET приложениях.
28.09.2005 IBProvider v3 [сборка 913] [beta version].
22.09.2005 IBProvider v3 [сборка 890] [beta version]. IBProvider v2/v1 [сборка 1811].
01.09.2005 Журнал для разработчиков под Interbase и Firebird.
28.07.2005 IBProvider v3 [сборка 789] [beta version]. IBProvider v2/v1 [сборка 1802].
15.06.2005 IBProvider v3 [сборка 779] [beta version]. IBProvider v2/v1 [сборка 1795].
12.04.2005 Открыт форум для пользователей IBProvider
22.03.2005 IBProvider 2.4.2.1772. Релиз.
28.02.2005 IBProvider 3.0.0.639 beta. Изменение корпоративной лицензии.
11.02.2005 IBProvider 3.0.0.573 beta.
24.12.2004 IBProvider 3.0.0.449 beta.
12.11.2004 IBProvider 2.4.1.1720/1.7.23.1720. Релиз.
31.05.2004 IBProvider 2.4.0.1607/1.7.22.1607. Релиз.
14.05.2004 Релиз кандидат 2.4.0.1588/1.7.22.1588
30.04.2004 Версия 2.3.3.1523 beta
29.03.2004 Версия 2.3.3.1416 beta
17.12.2003 Версия 2.3.3.1300
18.10.2003 Версия 2.3.2.1233
22.08.2003 Версия 2.3.1.1184
25.06.2003 Версия 2.3.0.1134 - расширена поддержка MS AS, MS SQL
23.04.2003 Версия 2.2.0.969 - поддержка диалога Data Links, локализация.
31.03.2003 Версия 2.1.2.
26.03.2003 Версия 2.1.1.
04.03.2003 Версия 2.1. Полностью переписан механизм обработки ошибок.
26.02.2003 Скидки на IBProvider.
18.02.2003 Изменение в сроках лицензии
23.01.2003 Версия 2.0.1.735. Исправление ошибок, оптимизация, HTML help
10.12.2002 IBProvider второго поколения
21.11.2002 Версия 1.7.11.584 и 1.8.0.584 beta
06.11.2002 Версия 1.7.10.542 и 1.8.0.542 beta
20.10.2002 Версия 1.7.9.481 и 1.8.0.481 beta
12.08.2002 Версия 1.7.6.350 и 1.8.0.350 beta
30.07.2002 Версия 1.7.5.311 - Исправление ошибок
10.07.2002 Версия 1.7.4.289
20.06.2002 Версия 1.7.3.269
30.05.2002 Версия 1.7.2.255
08.05.2002 Версия 1.7.1
22.04.2002 Версия 1.7.0.227. Поддержка UNICODE. Новые цены.
29.03.2002 Версия 1.6.3.213
28.02.2002 Версия 1.6.2.201
08.02.2002 Версия 1.6.2.199
19.01.2002 Версия 1.6.1.185
24.12.2001 Free Версия 1.5.2
13.12.2001 Версия 1.6
14.11.2001 1.5.1 - Смена компилятора. оптимизация. IColumnsRowset и другое ...
30.08.2001 IN-OUT параметры. массивы. ....
16.07.2001 Ошибка с проверкой подключения в Data Links
21.05.2001 Поддержка хранимых процедур
16.05.2001 Примеры на Delphi от Андрея Семака
14.05.2001 Последний штрих для RowSet
30.04.2001 Выпуск коммерческой версии
20.04.2001 Поддержка DTC и Пула ресурсов
04.04.2001 Поддержка строк c нулевыми символами
16.03.2001 Реализация IOpenRowset::OpenRowset
15.03.2001 Поддержка DECIMAL и NUMERIC
12.03.2001 Исправление ошибок
01.03.2001 Устранены ошибки: специфические и не очень
03.01.2001 Реализация автоматического старта и подтверждения транзакции.
01.12.2000 Тотальная реконструкция IBProvider'а и его клиентской библиотеки.
15.09.2000 Создание версии для IB6. которую Вы увидите только 1 декабря 2000г.

Теги: Firebird, Firebird Delphi, Interbase Delphi, Скачать Firebird, Firebird ODBC driver, Interbase ODBC, Integration Services (SSIS), Firebird, Interbase и SQL Linked Server (MS SQL), Firebird .Net Provider, Visual Studio .Net 2008, (c#), Firebird 2.1, Firebird 2.0, Firebird 2, Firebird 64 bit, Interbase 64 bit, Interbase oledb provider, Interbase driver, Firebird ole db provider, Firebird driver


Назад Вперед