delphilinux数据库路径
我正在使用WebBroker为我正在做的项目编写一些API。我添加了一个数据模块,它包含一个delphilinux数据库路径,delphi,Delphi,我正在使用WebBroker为我正在做的项目编写一些API。我添加了一个数据模块,它包含一个TFDConnection,这样我就可以连接到sqlite数据数据库。我在windows下有一个项目(就像测试一样),它正在D:\上保存数据库 在linux上,我打算调用TPath.GetHomePath,但我认为这不是一个好的选择。有没有办法将数据库放在Linux上与项目相同的文件夹中 procedure TDataModule1.fdConnectionBeforeConnect(Sender: TO
TFDConnection
,这样我就可以连接到sqlite数据数据库。我在windows下有一个项目(就像测试一样),它正在D:\
上保存数据库
在linux上,我打算调用TPath.GetHomePath
,但我认为这不是一个好的选择。有没有办法将数据库放在Linux上与项目相同的文件夹中
procedure TDataModule1.fdConnectionBeforeConnect(Sender: TObject);
begin
if isLinux then
begin
fdConnection.Params.Values['Database'] := TPath.Combine(TPath.GetHomePath, 'mydatabase.sqlite');
end;
end;
procedure TDataModule1.fdConnectionAfterConnect(Sender: TObject);
const
sCreateTableSQL = 'CREATE TABLE IF NOT EXISTS ...';
begin
if isLinux then
fdConnection.ExecSQL(sCreateTableSQL);
end;
function TDataModule1.isLinux: boolean;
begin
Result := (TOSVersion.Platform = pfLinux);
end;
我计划在linux上运行ApacheWebbroker模块。我希望数据库与linux可执行文件位于同一文件夹中,我如何才能做到这一点?我看到
TPath
有GetHomePath
,它可以在Linux上运行,但不支持其他功能。注意,并非所有机器都有两个驱动器(`D:`也不是一个好地方)。尝试将数据库存储在应用程序数据文件夹中。@Victoria我的计算机有D:\我将在这里进行测试!真正的东西只能在linux上运行,所以我想找到一种方法来存储数据库:)我知道不是每台计算机都有D:\所以我想使用TPath;它可以(我希望)给我一个正确的路径到一个我还没有使用Linux版本的文件夹,但是我想ParamStr(0)也可以在Linux上工作。作为旁白。。。在任何平台上,将数据库与可执行文件放在同一文件夹中都不是一个好主意(也不是标准)。