C# 操作 SQLite 数据库运用
				
									
					
					
						|  | 
							 2025年8月7日 14:51
								本文热度 841 | 
					
				 
				SQLite是一个轻量级的嵌入式关系型数据库管理系统,它以库的形式提供服务,不需要单独的服务器进程,操作简单且功能强大。
SQLite核心特点:
SQLite适用场景:
- 移动应用(iOS/Android)本地存储 
- 嵌入式设备和物联网应用 
- 桌面应用程序数据存储 
- 中小型网站数据库 
- 应用程序缓存 
- 数据分析原型开发 
- 测试环境数据库 
 
 
以下为SQLite基础运用方法:增、删、改、查实例:
using System.Data.SQLite;
string DbConnectionString = "Data Source=SQLite数据库路径;Version=3;password= ";
bool RetState = GetConnnectState();
 DataTable dt = GetDataTable(SelectSqlStr);
string SqlStr = "添加、更新、删除SQL命令";int RetNum = ExecuteSqlTran(SqlStr);
public bool GetConnnectState(){    bool RetState = false;    try    {        if (DbConnectionString == "") return false;
        using (SQLiteConnection connection = new SQLiteConnection(DbConnectionString))        {            if (connection.State != ConnectionState.Open)            {                connection.Open();            }            if (connection.State == ConnectionState.Open)            {                RetState = true;            }        }    }    catch (Exception)    {        RetState = false;    }    return RetState;}
public DataTable GetDataTable(string sql){    DataSet ds = new DataSet();    try    {        using (SQLiteConnection connection = new SQLiteConnection(DbConnectionString))        {            connection.Open();            using (SQLiteCommand command = new SQLiteCommand(sql, connection))            {                using (SQLiteDataAdapter adapter = new SQLiteDataAdapter(command))                {                    try                    {                        adapter.Fill(ds, szTableName);                        adapter.Dispose();                        command.Dispose();                        connection.Dispose();                    }                    catch (Exception)                    {                        adapter.Dispose();                        command.Dispose();                        connection.Dispose();                    }                }            }        }    }    catch (Exception ex)    {	   return null    }    if (ds == null) return null;    return ds.Tables[0];}
public int ExecuteSqlTran(string SQLString){    int rows = 0;    using (MySqlConnection conn = new MySqlConnection(DbConnectionString))    {        if (conn.State != ConnectionState.Open) conn.Open();
        using (MySqlTransaction transaction = conn.BeginTransaction())        {            using (MySqlCommand cmd = conn.CreateCommand())            {                try                {                    cmd.Transaction = transaction;                    cmd.CommandText = SQLString;                    cmd.CommandTimeout = 5 * 1000 * 60;                    rows = cmd.ExecuteNonQuery();                    transaction.Commit();                    cmd.Dispose();                    conn.Dispose();                }                catch (Exception ex)                {                    transaction.Rollback();                    cmd.Dispose();                    conn.Dispose();                }            }        }    }    return rows;}
该文章在 2025/8/8 12:56:03 编辑过