C# 操作 SQLite 数据库运用
|
2025年8月7日 14:51
本文热度 790
|
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 编辑过