Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database Firemonkey应用程序的嵌入式数据库_Database_Delphi_Delphi Xe2_Firemonkey - Fatal编程技术网

Database Firemonkey应用程序的嵌入式数据库

Database Firemonkey应用程序的嵌入式数据库,database,delphi,delphi-xe2,firemonkey,Database,Delphi,Delphi Xe2,Firemonkey,创建客户机应用程序时,希望将整个数据库嵌入软件或单个独立dll(即sqlite),而不是类似mysql的东西 XE2内置了哪些“开箱即用”的功能,不需要第三方工具 除了TClientDataSet/xml文件之外:)Firebird可用于XE2。。。对于单用户使用,您不需要运行服务来访问它(但需要firebird客户端和供应商dll来访问它)。firebird可用于XE2。。。对于单用户使用,您不需要运行服务来访问它(但需要firebird客户端和供应商dll来访问它)。您可以使用支持多个平台的

创建客户机应用程序时,希望将整个数据库嵌入软件或单个独立dll(即sqlite),而不是类似mysql的东西

XE2内置了哪些“开箱即用”的功能,不需要第三方工具


除了TClientDataSet/xml文件之外:)

Firebird可用于XE2。。。对于单用户使用,您不需要运行服务来访问它(但需要firebird客户端和供应商dll来访问它)。

firebird可用于XE2。。。对于单用户使用,您不需要运行服务来访问它(但需要firebird客户端和供应商dll来访问它)。

您可以使用支持多个平台的my(以及my中的一些详细信息)。在Windows中,您需要将sqlite3.dll与应用程序一起部署,在OSX上不需要这样做。您可以从svn获取来源。用法示例:

uses
  SQLiteTable3,
  {$IFDEF DELPHI16_UP}
  System.SysUtils;
  {$ELSE}
  SysUtils;
  {$ENDIF}

procedure Demo;
var
  slDBpath: string;
  db: TSQLiteDatabase;
  pstm TSQLitePreparedStatement;
begin
  slDBpath := IncludeTrailingPathDelimiter(GetHomePath) + 'test.db';
  db := TSQLiteDatabase.Create(slDBpath);
  try
    if db.TableExists('testtable') then
    begin
      pstm := TSQLitePreparedStatement.Create(db,
        'insert into testtable (name,number) values (?,?)',  //sql statement
        ['NewRec', 99.99]); //parameter values
      try
        pstm.ExecSQL;
      finally
        pstm.Free;
      end;
    end;

  finally
    db.Free;
  end;
end;
您可以使用my(my中还有更多信息),它支持多种平台。在Windows中,您需要将sqlite3.dll与应用程序一起部署,在OSX上不需要这样做。您可以从svn获取来源。用法示例:

uses
  SQLiteTable3,
  {$IFDEF DELPHI16_UP}
  System.SysUtils;
  {$ELSE}
  SysUtils;
  {$ENDIF}

procedure Demo;
var
  slDBpath: string;
  db: TSQLiteDatabase;
  pstm TSQLitePreparedStatement;
begin
  slDBpath := IncludeTrailingPathDelimiter(GetHomePath) + 'test.db';
  db := TSQLiteDatabase.Create(slDBpath);
  try
    if db.TableExists('testtable') then
    begin
      pstm := TSQLitePreparedStatement.Create(db,
        'insert into testtable (name,number) values (?,?)',  //sql statement
        ['NewRec', 99.99]); //parameter values
      try
        pstm.ExecSQL;
      finally
        pstm.Free;
      end;
    end;

  finally
    db.Free;
  end;
end;

您还可以查看,这是本机Delphi解决方案,不需要任何DLL。

您还可以查看,这是本机Delphi解决方案,不需要任何DLL。

但如何嵌入它?参考资料。。在运行时提取…:/我对这个问题的理解更多的是他不想要服务器解决方案。。。但我可能误解了?仔细阅读特征矩阵。专业版或入门版不支持dbExpress Firebird驱动程序。要获得dbExpress Firebird驱动程序,您需要企业版、终极版或架构师版。@CapeCodGunny:是的,没错。(也许Wizzard可以精确地知道他有哪个版本…)但是你如何嵌入它呢?参考资料。。在运行时提取…:/我对这个问题的理解更多的是他不想要服务器解决方案。。。但我可能误解了?仔细阅读特征矩阵。专业版或入门版不支持dbExpress Firebird驱动程序。要获得dbExpress Firebird驱动程序,您需要企业版、终极版或架构师版。@CapeCodGunny:是的,没错。(也许维扎德能准确地说出他的版本…)