使用 vb.net 打开SQLite "Temporary"数据库的确切Sytax是什么



下面的将在内存数据库中创建

Dim cn As SQLiteConnection = New SQLiteConnection("Data Source=:memory:")

下面将在 C:\Temp\ 中创建名为 abc 的磁盘文件 db

Dim cn As SQLiteConnection = New SQLiteConnection("Data Source=C:Tempabc")

或下面将在默认位置创建名为abc的磁盘文件db..\SqliteProject\bin\Debug

Dim cn As SQLiteConnection = New SQLiteConnection("Data Source=abc")

但是.. 如何创建临时数据库?? 文档链接 1 链接2 链接3 Link4 说"要创建临时数据库,请使用空文件名"。 但是没有人告诉确切的代码。我尝试了各种组合

Dim cn As SQLiteConnection = New SQLiteConnection("") 
Dim cn As SQLiteConnection = New SQLiteConnection("Data Source=") 
Dim cn As SQLiteConnection = New SQLiteConnection("Data Source=C:Temp")

但都抛出异常/错误

System.Data.SQLite 使用以下代码来检查数据库名称:

  fileName = FindKey(opts, "Data Source", DefaultDataSource);
  if (String.IsNullOrEmpty(fileName))
  {
    fileName = FindKey(opts, "Uri", DefaultUri);
    if (String.IsNullOrEmpty(fileName))
    {
      fileName = FindKey(opts, "FullUri", DefaultFullUri);
      if (String.IsNullOrEmpty(fileName))
        throw new ArgumentException(UnsafeNativeMethods.StringFormat(CultureInfo.CurrentCulture, "Data Source cannot be empty.  Use {0} to open an in-memory database", MemoryFileName));

因此,无法指定空名称。

但是,可以使用空路径指定 URI 文件名:

New SQLiteConnection("FullUri=file:") 

相关内容

最新更新