2016-11-17 87 views

回答

4

你擁有了它的官方回購: https://github.com/aspnet/Microsoft.Data.Sqlite

而且這裏有一個例子: http://www.bricelam.net/2015/04/29/sqlite-on-corefx.html

編輯:如果添加鏈接內容消失的未來。

該提供程序建立在System.Data.Common合同之上。該合同是ADO.NET提供商模型的一個非常小的子集。任何熟悉ADO.NET的用戶都應該感到自然。

using (var connection = new SqliteConnection("" + 
    new SqliteConnectionStringBuilder 
    { 
     DataSource = "hello.db" 
    })) 
{ 
    connection.Open(); 

    using (var transaction = connection.BeginTransaction()) 
    { 
     var insertCommand = connection.CreateCommand(); 
     insertCommand.Transaction = transaction; 
     insertCommand.CommandText = "INSERT INTO message (text) VALUES ($text)"; 
     insertCommand.Parameters.AddWithValue("$text", "Hello, World!"); 
     insertCommand.ExecuteNonQuery(); 

     var selectCommand = connection.CreateCommand(); 
     selectCommand.Transaction = transaction; 
     selectCommand.CommandText = "SELECT text FROM message"; 
     using (var reader = selectCommand.ExecuteReader()) 
     { 
      while (reader.Read()) 
      { 
       var message = reader.GetString(0); 
       Console.WriteLine(message); 
      } 
     } 

     transaction.Commit(); 
    } 
} 

配料

唯一真正的功能,該庫添加到本地SQLite的接口是配料。本地接口一次只支持編譯和執行一條語句。這個庫以一種應該感覺完全透明的方式實現批處理。以下是使用批處理的示例。

using (var connection = new SqliteConnection("Data Source=hello.db")) 
{ 
    var command = connection.CreateCommand(); 
    command.CommandText = 
     "UPDATE message SET text = $text1 WHERE id = 1;" + 
     "UPDATE message SET text = $text2 WHERE id = 2"; 
    command.Parameters.AddWithValue("$text1", "Hello"); 
    command.Parameters.AddWithValue("$text2", "World"); 

    connection.Open(); 
    command.ExecuteNonQuery(); 
} 

平臺:

目前,Microsoft.Data.Sqlite適用於以下平臺。

  • .NET框架
  • .NET核心
  • .NET原生
  • CoreCLR
  • 的Windows通用
+0

感謝。任何關於mysql類的信息? –

+0

@AbdulRehmanSayed你正在尋找的包是「MySql.Data.Core」 – mattinsalto

+0

@AbdulRehmanSayed,http://insidemysql.com/mysql-connector-net-for-net-core-1-0/ – mattinsalto

相關問題