Do połączenia z Firebirdem korzystam z zakładki Interbase ->IBTransaction,
IBDatabase, IBQuery. W czasie działania programu chciałbym utworzyć bazę
danych i później kilka tabel, niestety gdy w IBQuery wstawie SQL tekst:
//////////////////
CREATE DATABASE 'D:\moja.fdb' page_size 8192 user 'SYSDBA' password
'masterkey';
/////////////////
i wykonam IBQuery.ExecSql;
to pojawia się komunikat SQL error code -530
Cannot prepare a CREATE DATABASE/SCHEMA statement
Na pewno wiecie co robię źle, pamiętam że kiedyś to chyba było ale naprawdę
nie mogę nigdzie tego znaleźć.
Pozdrawiam
Ja robiłem tak:
function TForm1.DataBaseCreate(FileName, User, Password: String): Boolean;
begin
Result := False;
IBDatabase.Connected := False;
IBDatabase.DatabaseName := FileName;
IBDatabase.Params.Clear;
IBDatabase.Params.Add('USER ' + Chr(39) + User + Chr(39));
IBDatabase.Params.Add('PASSWORD ' + Chr(39) + Password + Chr(39));
IBDatabase.Params.Add('PAGE_SIZE 4096');
IBDatabase.Params.Add('DEFAULT CHARACTER SET WIN1250');
IBDatabase.SQLDialect := 3;
try
IBDatabase.CreateDatabase;
except
Exit;
end;
Result := True;
end;
Jacek
Pzdr
"jh" <j...@radio.kielce.com.pl> wrote in message
news:d0rod3$h9o$1...@nemesis.news.tpi.pl...
Mam jeszcze jeden problem, a mianowicie nie mogę stworzyć tabeli w
Firebirdzie:
//////////////
query2.SQL.Clear;
query2.sql.Add('CREATE TABLE USERS ('+
' USER_NAME VARCHAR(128),'+
' PASSWD VARCHAR(32) );');
query2.ExecSQL;
query2.SQL.Clear;
query2.sql.Add('GRANT SELECT ON USERS TO PUBLIC;');
query2.ExecSQL;
///////////////////
Kod ten wykonuje się, ale tabela się nie tworzy?
Z góry dziękuję i pozdrawiam
"robik" <robe...@posejdon.wpk.p.lodz.pl> wrote in message
news:d0rlh9$5eq$1...@nemesis.news.tpi.pl...