1

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

XE2 中内置了什么可以“开箱即用”并且不需要第三方工具?

除了 TClientDataSet / xml 文件 :)

4

3 回答 3

3

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

于 2011-09-24T17:07:23.727 回答
3

您可以使用我的SQLite 包装器(我的博客中还有更多信息),它支持多个平台。在 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;
于 2011-09-30T11:21:59.257 回答
1

您还可以查看NexusDB Embedded,它是原生 Delphi 解决方案,不需要任何 Dll。

于 2011-09-30T21:09:51.987 回答