从应用程序创建Sqlite Embedded数据库

rus*_*uss 8 c# database sqlite

我有一个winforms应用程序,它使用sqlite来存储数据.我可以使用脚本在用户第一次使用应用程序时创建表格,而不是发送空白数据库吗?你能指出一个C#的例子吗?

更新:我想避免发送空白数据库.因此,如果用户仅为1个用户安装应用程序,则只有他的个人资料才能获得副本.如果安装适用于所有用户,则所有用户配置文件都将获取数据库

Tim*_*mwi 19

是的,这是可能的:

  • 首次运行应用程序时,请检查数据库文件是否存在.
  • 如果没有,请使用Sqlite选项打开它FailIfMissing=False.这将创建一个新文件.
  • 然后,使用SQL命令CREATE TABLE ...来创建架构结构.

对于第二步,我使用看起来像这样的代码:

public DbConnection CreateConnectionForSchemaCreation(string fileName)
{
    var conn = new SQLiteConnection();
    conn.ConnectionString = new DbConnectionStringBuilder()
    {
        {"Data Source", fileName},
        {"Version", "3"},
        {"FailIfMissing", "False"},
    }.ConnectionString;
    conn.Open();
    return conn;
}
Run Code Online (Sandbox Code Playgroud)