找回密码
 加入
搜索
查看: 6262|回复: 19

[效率算法] _SQLite.dll库打开错误,如何处理?【已解决】

  [复制链接]
发表于 2016-6-20 11:16:17 | 显示全部楼层 |阅读模式
本帖最后由 blue_dvd 于 2016-7-14 22:17 编辑

第一次写数据库,没想到使用例子都无法运行,请高手指点:
#include <MsgBoxConstants.au3>
#include <SQLite.au3>
#include <SQLite.dll.au3>

Local $aResult, $iRows, $iColumns, $iRval

_SQLite_Startup()
If @error Then
    MsgBox($MB_SYSTEMMODAL, "SQLite 错误", "SQLite.dll 不能加载!")
    Exit -1
EndIf
ConsoleWrite("SQLite 库版本 = " & _SQLite_LibVersion() & @CRLF)
_SQLite_Open() ; 打开一个 :内存: 数据库
If @error Then
    MsgBox($MB_SYSTEMMODAL, "SQLite 错误", "无法加载数据库!")
    Exit -1
EndIf

; 示例表
; Name        | Age
; -----------------------
; Alice       | 43
; Bob         | 28
; Cindy       | 21

If Not _SQLite_Exec(-1, "CREATE TEMP TABLE persons (Name, Age);") = $SQLITE_OK Then _
        MsgBox($MB_SYSTEMMODAL, "SQLite 错误", _SQLite_ErrMsg())
If Not _SQLite_Exec(-1, "INSERT INTO persons VALUES ('Alice','43');") = $SQLITE_OK Then _
        MsgBox($MB_SYSTEMMODAL, "SQLite 错误", _SQLite_ErrMsg())
If Not _SQLite_Exec(-1, "INSERT INTO persons VALUES ('Bob','28');") = $SQLITE_OK Then _
        MsgBox($MB_SYSTEMMODAL, "SQLite 错误", _SQLite_ErrMsg())
If Not _SQLite_Exec(-1, "INSERT INTO persons VALUES ('Cindy','21');") = $SQLITE_OK Then _
        MsgBox($MB_SYSTEMMODAL, "SQLite 错误", _SQLite_ErrMsg())

; 查询
$iRval = _SQLite_GetTable2d(-1, "SELECT * FROM persons;", $aResult, $iRows, $iColumns)
If $iRval = $SQLITE_OK Then
    _SQLite_Display2DResult($aResult)

    ; $aResult 结果看起来像这样:
    ; Name   Age
    ; Alice  43
    ; Bob    28
    ; Cindy  21
    ; 如果格式被切换, _SQLite_GetTable2d 结果将是这样的:
    ; Name  Alice  Bob  Cindy
    ; Age   43     28   21

Else
    MsgBox($MB_SYSTEMMODAL, "SQLite 错误: " & $iRval, _SQLite_ErrMsg())
EndIf

_SQLite_Close()
_SQLite_Shutdown()
执行后的错误


请高手帮忙解决,多谢了!
AUTOIT版本号V3.3.14.2第四版,最新安装版。win7 32位
用3.3.9版本的库文件就可以了!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2016-6-20 23:24:27 | 显示全部楼层
下载sqlite.dll放到脚本目录试试呢
发表于 2016-6-21 00:48:35 | 显示全部楼层
回复 1# blue_dvd

比較好奇的是 AUTOIT版本号V4,最新安装版  這是哪個版本??

官方不過才 V3.3.14版而已
发表于 2016-6-21 00:51:00 | 显示全部楼层
回复 3# kk_lee69


    应该是13大神的版本,  是V3.3.14.2第四版
 楼主| 发表于 2016-6-21 10:03:25 | 显示全部楼层
回复 4# heroxianf
对,是V3.3.14.2第四版
发表于 2016-6-21 12:24:04 | 显示全部楼层
遇到同样的问题,楼主有操作db数据文件的例子吗,论坛找到的源码都报错。
发表于 2016-6-21 13:45:10 | 显示全部楼层
回复 6# king8462

應該不至於吧  你找了哪個報錯的??
发表于 2016-6-21 13:46:44 | 显示全部楼层
发表于 2016-6-21 13:48:09 | 显示全部楼层
回复 1# blue_dvd


   問題 可能跟這篇是類似的
http://www.autoitx.com/forum.php ... mp;highlight=SQLite
 楼主| 发表于 2016-6-21 16:26:35 | 显示全部楼层
回复 2# heroxianf
试了,还是一样的错误提示!
发表于 2016-6-21 16:40:33 | 显示全部楼层
本帖最后由 heroxianf 于 2016-6-21 16:45 编辑

回复 10# blue_dvd


    很久之前了解过Sqlite       你参照示例把加载DLL文件,我之前是成功的。
还有就是  使用X86运行,默认应该是x64运行的。



这是我之前找的例子

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2016-6-22 16:28:56 | 显示全部楼层
试试看,我用是可以的 32位系统
发表于 2016-6-22 16:31:03 | 显示全部楼层
试试看,我用是可以的 32位系统

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2016-6-22 16:36:42 | 显示全部楼层
默认的是 sqlite3.dll  这个名字吧
 楼主| 发表于 2016-7-6 15:39:07 | 显示全部楼层
回复 11# heroxianf
非常感谢,能成功编译并运行,接下来会仔细研究!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-25 22:48 , Processed in 0.086588 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表