找回密码
 加入
搜索
查看: 7244|回复: 13

SQLite数据库如何存储图片

  [复制链接]
发表于 2009-2-7 01:05:48 | 显示全部楼层 |阅读模式
SQLite数据库如何存储图片

无果,结贴。

[ 本帖最后由 ymjssg109 于 2009-3-7 17:35 编辑 ]
发表于 2009-2-7 01:13:46 | 显示全部楼层
将图片转成二进制。。
发表于 2009-2-7 11:15:29 | 显示全部楼层
。。。。楼主意思不明确
我估计楼主是想存储文件的路径
 楼主| 发表于 2009-2-7 22:36:45 | 显示全部楼层
谢谢楼上提醒,确实没有表达清楚。
应该是
如何把指定控件上的图片存入SQLite数据库
发表于 2009-2-19 21:29:25 | 显示全部楼层
应该是把指定的图片存入sqlite,然后再用控件调用出来吧?
发表于 2009-2-19 21:48:56 | 显示全部楼层
保存图片,一般就2种方法,读取文件原始值,也就是2进制码,然后保存到数据库里,或者把图片保存在某一个文件夹下,然后把路径保存到数据库里
发表于 2009-2-20 10:13:58 | 显示全部楼层
有例子吗?放上来看看。.
发表于 2009-8-3 22:44:36 | 显示全部楼层
专程二进制
发表于 2010-4-19 16:19:52 | 显示全部楼层
本帖最后由 caodongchun 于 2010-4-19 16:22 编辑
#include <SQLite.au3>
#include <SQLite.dll.au3>
$FileTABLE = "FileDATA"
_SQLite_Startup()
FileSaveToDataBase(@ScriptDir & "\BJ3.0 PWS.gif", "database.db")
FileLoadFromDataBase(@ScriptDir & "\1.gif", "database.db", "BJ3.0 PWS.gif")
_SQLite_Shutdown()
Func FileLoadFromDataBase($FileSaveAs, $DB_Filename, $FileNameINDB)
        Local $aRow
        _SQLite_Open($DB_Filename)
        _SQLite_QuerySingleRow(-1, "SELECT * FROM " & $FileTABLE & " WHERE FileName = '" & $FileNameINDB & "';", $aRow)
        If $aRow[0] <> '' Then

                $hFileSaveAs = FileOpen($FileSaveAs, 18)
                FileWrite($hFileSaveAs, Binary($aRow[1]))

        EndIf
        _SQLite_Close()
EndFunc   ;==>FileLoadFromDataBase

Func FileSaveToDataBase($File_Filename, $DB_Filename)
        Local $hFile = FileOpen($File_Filename, 16), $aRow
        $Binary = FileRead($hFile)
        _SQLite_Open($DB_Filename)
        _SQLite_Exec(-1, "CREATE TABLE IF NOT Exists " & $FileTABLE & " (FileName TEXT,DATE Binary);")
        _SQLite_QuerySingleRow(-1, "SELECT FileName FROM " & $FileTABLE & " WHERE FileName = '" & FileGetName($File_Filename) & "';", $aRow)
        $temp = $aRow[0]
        If $temp = "" Then
                $n = 1
                While $n <= 100
                        $RT = _SQLite_Exec(-1, "Insert into " & $FileTABLE & " (FileName) values ('" & FileGetName($File_Filename) & "');")
                        If $RT = $SQLITE_OK Then
                                ExitLoop
                        Else
                                Sleep(300)
                                $n = $n + 1
                        EndIf
                WEnd
                If $RT <> $SQLITE_OK Then Return False
        EndIf
        _SQLite_Exec(-1, "UPDATE " & $FileTABLE & " SET FileName = '" & FileGetName($File_Filename) & "' , DATE = '" & $Binary & "';")

        _SQLite_Close()
EndFunc   ;==>FileSaveToDataBase



Func FileGetName($sFileFullName)
        $sFileName = StringSplit($sFileFullName, '\', 2)
        If IsArray($sFileName) Then
                $sFileName = $sFileName[UBound($sFileName) - 1]
        Else
                $sFileName = $sFileFullName
        EndIf
        Return $sFileName
EndFunc   ;==>FileGetName
发表于 2010-6-16 21:45:13 | 显示全部楼层
新手!!学习中!谢谢
发表于 2010-7-17 09:48:43 | 显示全部楼层
正想学习的
发表于 2010-8-1 22:23:49 | 显示全部楼层
正需要这个,下来用用看
发表于 2014-1-11 18:42:02 | 显示全部楼层
正想看看如何存图片
发表于 2014-5-9 12:20:11 | 显示全部楼层
新手!!学习中!谢谢
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-16 22:46 , Processed in 0.087043 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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