成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在 C# 中調用 SQLite 數據庫

數據庫
在C#中,通過SQLite數據庫進行數據存儲和檢索是一項常見任務。本文將介紹如何在C#中使用SQLite數據庫,并提供相應的示例代碼。

SQLite 是一種輕量級的嵌入式關系型數據庫,廣泛用于移動應用、桌面應用以及嵌入式系統中。在C#中,通過SQLite數據庫進行數據存儲和檢索是一項常見任務。本文將介紹如何在C#中使用SQLite數據庫,并提供相應的示例代碼。

準備工作

  • 安裝SQLite庫: 在C#項目中,我們通常使用System.Data.SQLite庫來與SQLite數據庫進行交互。你可以通過NuGet包管理器來安裝這個庫。常用的包有System.Data.SQLite和Microsoft.Data.Sqlite。本文將使用Microsoft.Data.Sqlite。在Visual Studio中,右鍵點擊你的項目,選擇“管理NuGet包”,然后搜索Microsoft.Data.Sqlite并安裝。
  • 創建SQLite數據庫: 如果你還沒有SQLite數據庫,可以使用SQLite工具(如DB Browser for SQLite)創建一個數據庫文件,或者在代碼中動態創建。

示例代碼

下面是一個完整的示例,展示如何在C#中使用SQLite數據庫進行創建表、插入數據、查詢數據和更新數據等操作。

1. 創建SQLite連接

首先,我們需要創建一個SQLite連接。

using System;
using Microsoft.Data.Sqlite;

class Program
{
    private static string connectionString = "Data Source=mydatabase.db";

    static void Main(string[] args)
    {
        using (var connection = new SqliteConnection(connectionString))
        {
            connection.Open();

            // 在這里進行數據庫操作
            CreateTable(connection);
            InsertData(connection);
            QueryData(connection);
            UpdateData(connection);
        }
    }

    // 其他數據庫操作方法...
}

2. 創建表

接下來,我們創建一個表。例如,我們創建一個名為Users的表,包含Id和Name兩個字段。

static void CreateTable(SqliteConnection connection)
{
    string sql = "CREATE TABLE IF NOT EXISTS Users (Id INTEGER PRIMARY KEY, Name TEXT)";

    using (var command = new SqliteCommand(sql, connection))
    {
        command.ExecuteNonQuery();
        Console.WriteLine("Table 'Users' created.");
    }
}

3. 插入數據

向Users表中插入一些數據。

static void InsertData(SqliteConnection connection)
{
    string sql = "INSERT INTO Users (Name) VALUES (@Name)";

    using (var command = new SqliteCommand(sql, connection))
    {
        command.Parameters.AddWithValue("@Name", "Alice");
        command.ExecuteNonQuery();

        command.Parameters.AddWithValue("@Name", "Bob");
        command.ExecuteNonQuery();

        Console.WriteLine("Data inserted into 'Users'.");
    }
}

4. 查詢數據

從Users表中查詢數據并輸出。

static void QueryData(SqliteConnection connection)
{
    string sql = "SELECT Id, Name FROM Users";

    using (var command = new SqliteCommand(sql, connection))
    {
        using (var reader = command.ExecuteReader())
        {
            while (reader.Read())
            {
                Console.WriteLine($"Id: {reader["Id"]}, Name: {reader["Name"]}");
            }
        }
    }
}

5. 更新數據

更新Users表中的數據。

static void UpdateData(SqliteConnection connection)
{
    string sql = "UPDATE Users SET Name = @NewName WHERE Id = @Id";

    using (var command = new SqliteCommand(sql, connection))
    {
        command.Parameters.AddWithValue("@NewName", "Charlie");
        command.Parameters.AddWithValue("@Id", 1);
        command.ExecuteNonQuery();

        Console.WriteLine("Data updated in 'Users'.");
    }
}

完整代碼

以下是完整代碼的匯總:

using System;
using Microsoft.Data.Sqlite;

class Program
{
    private static string connectionString = "Data Source=mydatabase.db";

    static void Main(string[] args)
    {
        using (var connection = new SqliteConnection(connectionString))
        {
            connection.Open();

            CreateTable(connection);
            InsertData(connection);
            QueryData(connection);
            UpdateData(connection);
            QueryData(connection);  // 再次查詢以查看更新結果
        }
    }

    static void CreateTable(SqliteConnection connection)
    {
        string sql = "CREATE TABLE IF NOT EXISTS Users (Id INTEGER PRIMARY KEY, Name TEXT)";

        using (var command = new SqliteCommand(sql, connection))
        {
            command.ExecuteNonQuery();
            Console.WriteLine("Table 'Users' created.");
        }
    }

    static void InsertData(SqliteConnection connection)
    {
        string sql = "INSERT INTO Users (Name) VALUES (@Name)";

        using (var command = new SqliteCommand(sql, connection))
        {
            command.Parameters.AddWithValue("@Name", "Alice");
            command.ExecuteNonQuery();

            command.Parameters.AddWithValue("@Name", "Bob");
            command.ExecuteNonQuery();

            Console.WriteLine("Data inserted into 'Users'.");
        }
    }

    static void QueryData(SqliteConnection connection)
    {
        string sql = "SELECT Id, Name FROM Users";

        using (var command = new SqliteCommand(sql, connection))
        {
            using (var reader = command.ExecuteReader())
            {
                while (reader.Read())
                {
                    Console.WriteLine($"Id: {reader["Id"]}, Name: {reader["Name"]}");
                }
            }
        }
    }

    static void UpdateData(SqliteConnection connection)
    {
        string sql = "UPDATE Users SET Name = @NewName WHERE Id = @Id";

        using (var command = new SqliteCommand(sql, connection))
        {
            command.Parameters.AddWithValue("@NewName", "Charlie");
            command.Parameters.AddWithValue("@Id", 1);
            command.ExecuteNonQuery();

            Console.WriteLine("Data updated in 'Users'.");
        }
    }
}

結論

通過本文,我們了解了如何在C#中使用SQLite數據庫進行基本的CRUD操作。使用Microsoft.Data.Sqlite庫,可以方便地創建連接、執行SQL命令以及查詢和處理結果。SQLite的輕量級特性使得它非常適合嵌入式和本地存儲的應用場景。希望本文對你有所幫助,歡迎你在項目中嘗試使用SQLite數據庫!

責任編輯:趙寧寧 來源: 后端Q
相關推薦

2009-08-24 18:09:13

C#調用Oracle數

2024-02-28 08:06:17

2009-08-11 14:26:56

C#動態調用WebSe

2011-03-17 15:59:37

c#數據庫

2010-12-20 09:44:36

SQLite.C#

2009-08-11 13:35:13

C# Berkeley

2024-04-18 09:56:16

2009-08-05 16:49:42

C#中調用dll

2011-08-30 14:15:34

QTSQLite數據庫

2013-04-01 10:49:51

iOS開發sqlite數據庫

2009-08-11 14:51:47

C#讀取Excel中數

2009-03-19 10:08:09

C#數據庫查詢

2010-10-26 15:21:11

連接Oracle數據庫

2009-08-07 16:19:00

C#下數據庫編程

2009-08-25 12:50:32

數據庫常用C#代碼

2009-08-12 14:27:36

訪問MySQL數據庫C# ODBC

2009-09-04 17:23:21

C#數據庫連接對象

2009-08-07 16:19:00

C#下數據庫編程

2009-08-06 18:10:06

C#數據庫事務

2009-08-25 14:05:06

C#連接數據庫代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久av | 亚洲福利| 国产欧美日韩一区二区三区在线 | 伊人伊人伊人 | 天天操夜夜拍 | 久热免费| 国产美女视频一区 | 激情一区二区三区 | 一区二区av在线 | 国产福利观看 | 久久久视频在线 | 久久国产精品-国产精品 | 天堂亚洲网 | 精品国产乱码久久久久久中文 | 久久九九色 | 精品少妇一区二区三区在线播放 | 亚洲成人国产精品 | 精品福利在线 | 国产精品日日摸夜夜添夜夜av | 99视频在线播放 | 欧美一区二区在线观看视频 | 久久精品欧美电影 | 久久国产精品一区 | 在线午夜电影 | 免费啪啪 | 三级特黄特色视频 | 在线一区视频 | 久久精品亚洲成在人线av网址 | 免费一看一级毛片 | 亚洲欧美综合精品久久成人 | 中文字幕在线一区二区三区 | 黄网站在线播放 | 欧美一区视频 | 成人免费视频网站在线看 | 久久久久国产一区二区三区 | 91xxx在线观看 | 亚洲一区二区三区在线观看免费 | 91久久国产精品 | 亚洲激情在线观看 | 欧美三级视频在线观看 | 日韩中文字幕视频在线观看 |