2014-11-05 100 views
0

我想使用Zeoslib組件在Windows 7上通過我的Delphi程序以編程方式創建數據庫和表格。從目前爲止我在網上找到的信息來看,Zeoslib希望在使用它之前創建數據庫。如果是這樣,有沒有辦法使用Zeoslib工具創建數據庫和表格。使用ZeosLib的Delphi SQLite3,如何創建數據庫和表?

回答

3

正常這個問題將被關閉,因爲你沒有顯示什麼你試過至今。

隨着ZeosLib很容易

安全注意事項:
當然,你應該使用參數化查詢。僅僅是爲了簡化程序,已在這裏省略

創建數據庫

procedure TForm1.CreateClick(Sender: TObject); 
begin 
    ZConnection1.Protocol:='sqlite-3'; 
    ZConnection1.Database:='F:\Programme\stack\SQLite\Database.sqlite'; 
    ZConnection1.Connect; 
    ZConnection1.Disconnect; 
end; 

創建一個表並插入

procedure TForm1.CreateInsertClick(Sender: TObject); 
begin 
    ZQuery1.SQL.Text := 'CREATE TABLE hardware (id INTEGER PRIMARY KEY, compname VARCHAR(30), username VARCHAR(30), model VARCHAR(30))'; 
    ZQuery1.ExecSQL; 
    ZQuery1.SQL.Text := 'CREATE INDEX sHardware ON hardware(compname)'; 
    ZQuery1.ExecSQL; 
    ZQuery1.SQL.Text := 'INSERT INTO hardware(id, compname, username, model) VALUES (1, "AMD8537", "OMonge", "Gigabyte");'; 
    ZQuery1.ExecSQL; 
end; 

要看到價值重新連接

procedure TForm1.ConnectClick(Sender: TObject); 
begin 
    ZConnection1.Connect; 
end; 

顯示值

procedure TForm1.OpenClick(Sender: TObject); 
begin 
    ZQuery1.SQL.Text := 'SELECT id, compname FROM hardware'; 
    ZQuery1.Open; 
end; 

形式

enter image description here

運行

enter image description here

1

如果數據庫文件不存在 - SQLite在連接上創建它。 下面是一個非常簡單的,但作用的例子:

procedure TForm1.Button1Click(Sender: TObject); 
begin 
    ZConnection1.Protocol := 'sqlite-3'; 
    ZConnection1.Database := 'foo.s3db'; 
    if not FileExists('foo.s3db') then 
    begin 
     ZConnection1.Connect; 
     ZConnection1.ExecuteDirect('create table foo (bar integer)'); 
    end 
    else 
     ZConnection1.Connect; 
    ZConnection1.Disconnect; 
end; 
相關問題