Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Программное создание и удаление базы данных Interbase, а так же выполнение SQL-скриптов

Delphi , Базы данных , Interbase

Программное создание и удаление базы данных Interbase, а так же выполнение SQL-скриптов

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ 
 This unit creates a database on a Interbase-Server at run-time. 
 The IBConsole is no longer needed. 
 You can execute an SQL script to create tables. 
 Try it out! 
}

 { 
 Diese Unit erstellt eine Datenbank auf einem Interbase - Server zur Laufzeit des Programms. 
 Es wird nicht mehr die IBConsole gebraucht. 
 Dazu kann man im Memo noch ein SQL - Skript ablaufen lassen zum erstellen der Tabellen. 
 Probiert es einfach aus. 
}

 unit Unit1;

 interface

 uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
   Dialogs, StdCtrls, ZTransact, ZIbSqlTr, DB, ZQuery, ZIbSqlQuery,
   ZConnect, ZIbSqlCon;

 type
   TForm1 = class(TForm)
     Button1: TButton;
     Memo1: TMemo;
     Button2: TButton;
     ZIbSqlQuery1: TZIbSqlQuery;
     ZIbSqlTransact1: TZIbSqlTransact;
     ZIbSqlDatabase1: TZIbSqlDatabase;
     Button3: TButton;
     procedure Button1Click(Sender: TObject);   // Caption/ Beschriftung : Create Database 
    procedure Button2Click(Sender: TObject);   // Caption/ Beschriftung : SQL-Anweisung 
    procedure Button3Click(Sender: TObject);   // Caption/ Beschriftung : Drop Database 
  private
     { Private-Deklarationen }
   public
     { Public-Deklarationen }
   end;

 var
   Form1: TForm1;

 implementation

 {$R *.dfm}

 // Creating the database 
// Hier wird durch drucken des Buttons die Datenbank erstellt 
//--------------------------------------------------------------------- 
procedure TForm1.Button1Click(Sender: TObject);
 begin
   ZIbSqlDatabase1.Database := '<<Pfad zu Datenbank>>';// Path to Database 
  ZIbSqlDatabase1.Host := 'testserver';
   ZIbSqlDatabase1.Password := 'masterkey';
   ZIbSqlDatabase1.Login := 'SYSDBA';
   ZIbSqlDatabase1.CreateDatabase('');
 end;

 // Execute the SQL-Script in the memo 
// Hier wird durch drucken des Buttons das SQL-Skript im Memo ausgefuhrt 
//---------------------------------------------------------------------- 
procedure TForm1.Button2Click(Sender: TObject);
 begin
   ZIbSqlDatabase1.Database := '<<Pfad zu Datenbank>>'; // Path to Database 
  ZIbSqlDatabase1.Host := 'testserver';
   ZIbSqlDatabase1.Password := 'masterkey';
   ZIbSqlDatabase1.Login := 'SYSDBA';
   ZIbSqlQuery1.SQL.Clear;
   ZIbSqlQuery1.SQL.AddStrings(memo1.Lines);
   ZIbSqlQuery1.ExecSQL;
 end;

 // Deleted the database 
// Hier wird durch drucken des Buttons die Datenbank komplette geloscht 
//--------------------------------------------------------------------- 
procedure TForm1.Button3Click(Sender: TObject);
 begin
   ZIbSqlDatabase1.Database := '<<Pfad zu Datenbank>>'; // Path to Database 
  ZIbSqlDatabase1.Host := 'testserver';
   ZIbSqlDatabase1.Password := 'masterkey';
   ZIbSqlDatabase1.Login := 'SYSDBA';
   ZIbSqlDatabase1.DropDatabase;
 end;

 end.

Приведенный код на Delphi предназначен для создания, выполнения SQL-сценариев на и удаления базы данных Interbase в реальном времени. Вот подробное описание кода:

Дизайн формы Форма (TForm1) содержит несколько контролов:

  • Button1: Создает базу данных
  • Memo1: Отображает SQL-сценарий
  • Button2: Выполняет SQL-сценарий в мемо
  • Button3: Удаляет базу данных

Подключение к базе данных Код использует компонент ZIbSqlDatabase для подключения к серверу Interbase. Свойства подключения устанавливаются следующим образом:

  • Host: 'testserver'
  • Login: 'SYSDBA'
  • Password: 'masterkey'

Создание базы данных Когда кнопка Button1 нажата, она устанавливает путь к базе данных и выполняет метод CreateDatabase компонента ZIbSqlDatabase.

Выполнение SQL-сценариев Когда кнопка Button2 нажата, она очищает объект запроса (ZIbSqlQuery1) и добавляет содержимое мемо в его SQL-запрос. Затем она выполняет запрос с помощью метода ExecSQL.

Удаление базы данных Когда кнопка Button3 нажата, она устанавливает путь к базе данных и выполняет метод DropDatabase компонента ZIbSqlDatabase.

Предложения по улучшению кода Вот несколько предложений для улучшения кода: 1. Обработка ошибок: Добавьте блоки try-except для обработки потенциальных ошибок при подключении к базе данных или выполнении SQL-сценариев. 2. Параметризованные запросы: Используйте параметризованные запросы вместо конкатенации пользовательского ввода (например, содержимое мемо) непосредственно в SQL-запрос. 3. Организация кода: Рассмотрите возможность разделения дизайна формы и реализации кода в отдельных модулях для лучшей поддерживаемости. 4. Обратная связь с пользователем: Предоставьте более информативные сообщения об ошибках или обратную связь с пользователем при создании, выполнении или удалении базы данных.

В целом, код предоставляет основу для управления базой данных Interbase в Delphi. С некоторыми улучшениями он может стать более robust и пользовательски friendly.

Программное создание и удаление базы данных Interbase, а также выполнение SQL-скриптов с помощью простого графического интерфейса в Delphi-приложении.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Interbase ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-06-16 09:06:48/0.0079989433288574/1