sqlite3操作

1.打开数据库
int sqlite3_open(
    const char *filename,   // 数据库的文件路径
    sqlite3 **ppDb          // 数据库实例
);


2.执行任何SQL语句
int sqlite3_exec(
    sqlite3*,                                  // 一个打开的数据库实例
    const char *sql,                           // 需要执行的SQL语句
    int (*callback)(void*,int,char**,char**),  // SQL语句执行完毕后的回调
    void *,                                    // 回调函数的第1个参数
    char **errmsg                              // 错误信息
);


3.检查SQL语句的合法性(查询前的准备)
int sqlite3_prepare_v2(
    sqlite3 *db,            // 数据库实例
    const char *zSql,       // 需要检查的SQL语句
    int nByte,              // SQL语句的最大字节长度
    sqlite3_stmt **ppStmt,  // sqlite3_stmt实例,用来获得数据库数据
    const char **pzTail
);


4.查询一行数据
int sqlite3_step(sqlite3_stmt*); // 如果查询到一行数据,就会返回SQLITE_ROW


5.利用stmt获得某一字段的值(字段的下标从0开始)
double sqlite3_column_double(sqlite3_stmt*, int iCol);  // 浮点数据
int sqlite3_column_int(sqlite3_stmt*, int iCol); // 整型数据
sqlite3_int64 sqlite3_column_int64(sqlite3_stmt*, int iCol); // 长整型数据
const void *sqlite3_column_blob(sqlite3_stmt*, int iCol); // 二进制文本数据
const unsigned char *sqlite3_column_text(sqlite3_stmt*, int iCol);  // 字符串数据
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C# 中使用 SQLite3 进行数据库操作通常涉及到 SQLite 的 .NET 数据库驱动,例如 SQLite PCL 或 Microsoft.Data.SqliteSQLite 是一个轻量级的关系型数据库,非常适合嵌入式系统和移动应用。以下是使用 C# 进行基本操作的一个简介: 1. **安装 SQLite**: - 在 .NET Core 中,可以使用 NuGet 包 `Microsoft.Data.Sqlite` 或 `sqlite-net-pcl`。 2. **创建连接**: ```csharp using System.Data.Sqlite; var connectionString = "Data Source=myDatabase.db;Version=3;"; using (var connection = new SqliteConnection(connectionString)) { connection.Open(); // 接下来的代码将在此数据库上下文内执行 } ``` 3. **执行 SQL 命令**: ```csharp string query = "INSERT INTO Users (Name, Email) VALUES (@name, @email)"; using (var command = new SqliteCommand(query, connection)) { command.Parameters.AddWithValue("@name", "John Doe"); command.Parameters.AddWithValue("@email", "john.doe@example.com"); command.ExecuteNonQuery(); } ``` 4. **查询数据**: ```csharp string sql = "SELECT * FROM Users WHERE Email = @email"; using (var command = new SqliteCommand(sql, connection)) { command.Parameters.AddWithValue("@email", "john.doe@example.com"); var reader = command.ExecuteReader(); while (reader.Read()) { string name = reader.GetString(0); // 获取姓名列 } } ``` 5. **事务处理**: ```csharp connection.BeginTransaction(); try { // 执行多个命令,如果有错误就回滚 command.ExecuteNonQuery(); command2.ExecuteNonQuery(); connection.Commit(); // 成功则提交 } catch (Exception ex) { connection.Rollback(); // 发生错误则回滚 } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值