为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 数据库类源码 正文

简易SQLite操作模块易语言源码

三叶资源网 2017-02-20 12:51:41 数据库类源码 2368 ℃ 2 评论

资源介绍:

简易SQLite操作模块易语言源码例程程序调用API函数实现SQLite简易操作。

资源界面:

.版本 2

.子程序 ConnectSQL, 整数型, 公开
.参数 filename, 文本型
.参数 password, 文本型, 可空
.局部变量 path, 字节集
.局部变量 pDb, 整数型
.局部变量 ret, 整数型

path = AnsiToUTF8 (filename)
ret = sqlite3_open_v2 (path, pDb, 6, 0)
.如果真 (pDb ≠ 0 且 ret = #SQLITE_OK)
    .如果真 (是否为空 (password) = 假)
        sqlite3_key (pDb, password, 取文本长度 (password))
    .如果真结束
    返回 (pDb)
.如果真结束
返回 (0)

.子程序 DisconnectSQL, 逻辑型, 公开
.参数 database, 整数型

.如果真 (database ≠ 0)
    .如果真 (sqlite3_close (database) = #SQLITE_OK)
        返回 (真)
    .如果真结束

.如果真结束
返回 (假)

.子程序 QuerySQL, 整数型, 公开
.参数 database, 整数型
.参数 SQL, 文本型
.局部变量 pStmt, 整数型
.局部变量 ret, 整数型
.局部变量 pszSQL, 字节集

.如果真 (database ≠ 0 且 取文本长度 (SQL) ≠ 0)
    pszSQL = AnsiToUTF8 (SQL)
    ret = sqlite3_prepare_v2 (database, pszSQL, -1, pStmt, 0)
    .如果真 (ret = #SQLITE_OK 且 pStmt ≠ 0)
        .如果 (sqlite3_step (pStmt) = #SQLITE_ROW)
            返回 (pStmt)
        .否则
            sqlite3_finalize (pStmt)
        .如果结束

    .如果真结束

.如果真结束
返回 (0)

.子程序 GetSQLNextRow, 逻辑型, 公开
.参数 query, 整数型
.局部变量 ret, 整数型

.如果真 (query ≠ 0)
    ret = sqlite3_step (query)
    .如果 (ret = #SQLITE_DONE)
        sqlite3_finalize (query)
    .否则
        .如果真 (ret = #SQLITE_ROW)
            返回 (真)
        .如果真结束

    .如果结束

.如果真结束
返回 (假)

.子程序 GetSQLColumnCount, 整数型, 公开
.参数 query, 整数型

.如果真 (query ≠ 0)
    返回 (sqlite3_column_count (query))
.如果真结束
返回 (0)

.子程序 GetSQLColumnData_Int, 整数型, 公开
.参数 query, 整数型
.参数 column, 整数型

.如果真 (query ≠ 0 且 column ≥ 0)
    返回 (sqlite3_column_int (query, column))
.如果真结束


.子程序 GetSQLColumnData_Double, 双精度小数型, 公开
.参数 query, 整数型
.参数 column, 整数型

.如果真 (query ≠ 0 且 column ≥ 0)
    返回 (sqlite3_column_double (query, column))
.如果真结束


.子程序 GetSQLColumnData_Text, 文本型
.参数 query, 整数型
.参数 column, 整数型

.如果真 (query ≠ 0 且 column ≥ 0)
    返回 (sqlite3_column_text (query, column))
.如果真结束


.子程序 FreeSQLQuery, , 公开
.参数 query, 整数型

.如果真 (query ≠ 0)
    sqlite3_finalize (query)
.如果真结束


.子程序 AnsiToUTF8, 字节集, 公开
.参数 Ansi文本, 文本型
.局部变量 Length, 整数型
.局部变量 AnsiLength, 整数型
.局部变量 UTF8Length, 整数型
.局部变量 UnicodeData, 字节集
.局部变量 UTF8Data, 字节集

AnsiLength = 取文本长度 (Ansi文本) + 1
Length = MultiByteToWideChar (936, 0, Ansi文本, AnsiLength, UnicodeData, 0)
.如果真 (Length = 0)
    返回 ({  })
.如果真结束
UnicodeData = 取空白字节集 (Length + Length)
.如果真 (MultiByteToWideChar (936, 0, Ansi文本, AnsiLength, UnicodeData, Length + Length) = 0)
    返回 ({  })
.如果真结束
UTF8Length = WideCharToMultiByte (65001, 0, UnicodeData, Length, UTF8Data, 0, 0, 0)
.如果真 (UTF8Length = 0)
    返回 ({  })
.如果真结束
UTF8Data = 取空白字节集 (UTF8Length)
.如果真 (WideCharToMultiByte (65001, 0, UnicodeData, Length, UTF8Data, UTF8Length, 0, 0) = 0)
    返回 ({  })

.如果真结束
返回 (UTF8Data)

资源作者:

易语言数据库教程

资源下载:

文件下载


来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

已有2位网友发表了看法:

  • 源码例子

    源码例子  评论于 [2020-02-02 18:20:39]  回复

    易语言高性能操作sqlite

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
黑月界面类3.8键值排序益友会注册表操作手动记牌QQ群引流选择夹图片组组件移动例程Yy多频道人数查询鱼刺多线程PDF打印缓动算法外挂案时时彩二星缩水软件腾讯薅羊毛斗鱼房间热度TP-link登陆快手二维码HOOK拦截
最新评论