Mobil uygulamada database oluşturmam lazım, örnek kodlarla database oluşturmak istiyorum fakat database oluşmadığı gibi hatada almıyorum,
sorun neden kaynaklı olabilir.
procedure TForm1.Button4Click(Sender: TObject);
var
DbYol: string;
begin
DbYol := System.IOUtils.TPath.GetDocumentsPath + PathDelim + 'Ders.db';
With Connection do
begin
LoginPrompt := False;
params.Clear;
params.Values['Database'] := DbYol;
params.Values['DriverID'] := 'SQLite';
params.Values['CharacterSet'] := 'utf8';
Connected := True;
end;
With MyDatabase do
begin
Active := False;
Connection := Connection;
SQL.Clear;
SQL.Add('CREATE TABLE IF NOT EXISTS DERS (');
SQL.Add(' ADI nvarchar(10)');
SQL.Add(' );');
ExecSQL;
SQL.Clear;
SQL.Add('SELECT');
SQL.Add(' ADI');
SQL.Add(' FROM DERS');
Active := True;
end;
end;
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
procedure GO;
var
DB: string;
begin
DB := System.IOUtils.TPath.GetDocumentsPath + PathDelim + 'db.s3db';
with Main do
begin
FDC.DriverName := 'SQLITE';
FDQ.Connection := FDC;
FDC.Params.Values['Database'] := DB;
FDC.Params.Values['CharacterSet'] := 'utf8';
if not FileExists(DB) then
begin
FDQ.SQL.Add( 'CREATE TABLE IF NOT EXISTS channels (' );
FDQ.SQL.Add( ' name nvarchar(50),');
FDQ.SQL.Add( ' url nvarchar(250)');
FDQ.SQL.Add( ' );');
FDQ.ExecSQL;
end;
FDC.Open;
end;
end;
procedure GO;
var
DB: string;
begin
DB := System.IOUtils.TPath.GetDocumentsPath + PathDelim + 'db.s3db';
with Main do
begin
FDC.DriverName := 'SQLITE';
FDQ.Connection := FDC;
FDC.Params.Values['Database'] := DB;
FDC.Params.Values['CharacterSet'] := 'utf8';
if not FileExists(DB) then
begin
FDQ.SQL.Add( 'CREATE TABLE IF NOT EXISTS channels (' );
FDQ.SQL.Add( ' name nvarchar(50),');
FDQ.SQL.Add( ' url nvarchar(250)');
FDQ.SQL.Add( ' );');
FDQ.ExecSQL;
end;
FDC.Open;
end;
end;
Selam Üsdat,
Verdiğin kodlar ve benim kodları test sorunsuz olarak çalışıyor, fakat bir türlü db oluşturulmuyor, ben mi yanlış biliyorum acaba bu kodlarla (System.IOUtils.TPath.GetDocumentsPath + PathDelim) APK nin olduğu yere db oluşturulması gerekmiyor mu? başka yere db oluşturma ihtimaline karşı cep telefondaki tüm klasörleri aradım fakat bulamadım...
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
Uygulamanızın /data/data/com.uygulamanız/files klasörüne ekler. Ben kaç defa kullandım sorun olmadı. Sizde sorun nedir acaba hata yazmadan böyle çözüm bulmak zor oluyor.