找回密码
 加入
搜索
查看: 9137|回复: 7

[系统综合] 请教sqlite数据库数据修改问题

  [复制链接]
发表于 2012-7-29 17:10:55 | 显示全部楼层 |阅读模式
本帖最后由 feelsky 于 2012-7-30 07:23 编辑



本人对数据库方面是一窍不通的,查了论坛的一些资料后还是没有办法实现,只是想修改homePage的值达到通过AU3修改浏览器主页的目的

图中的这个值一串数字通过浏览器打开是百度,算法转换怎么也搞不清楚,望高手给予解答

如何修改homePage的值,在论坛搜了一些其它代码套用,下面这个值$HPvalue是直接给的,修改了值但值类型貌似又不对了,怎样修改Blob类型的值?
#NoTrayIcon
#include <SQLite.au3>
#include <SQLite.dll.au3>

Global $SQLite_Data_Path
$SQLite_Data_Path = @ScriptDir & "\config.db"
_SQLite_Startup() ;加载 SQLite.dll

$key = "homePage"
$HPvalue = "0D 00 00 00 28 00 00 00 68 00 74 00 74 00 72 00"

_SQLite_Open($SQLite_Data_Path)
  _SQLite_Exec(-1, "UPDATE config SET value = '" & $HPvalue & "' WHERE key = '" & $key & "';")
_SQLite_Close()
_SQLite_Shutdown() ;卸载 SQLite.dll
望高手能举个例子,实现字符转换,以及修改数据,谢谢

虽然知道这里Blob的值是二进制的,但看了二楼的代码,还是不知道图中的这个值是如何换算来的

本帖子中包含更多资源

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

×
发表于 2012-7-29 23:17:20 | 显示全部楼层
本帖最后由 l4ever 于 2012-7-29 23:27 编辑

#Include <String.au3>
msgbox(32,"Binary",StringToBinary ("http://baidu.com",2))

msgbox(32,"是个括号",BinaryToString ("0x2800",2))
msgbox(32,"h",BinaryToString ("0x6800",2))
msgbox(32,"t",BinaryToString ("0x7400",2))
msgbox(32,"t",BinaryToString ("0x7400",2))
msgbox(32,"p",BinaryToString ("0x7000",2))

二进制, 自己转换下,
SQL语句各不同,mdb,mysql,mssql大同小异,参考 http://baike.baidu.com/view/3146511.htm
发表于 2012-7-30 19:55:47 | 显示全部楼层
回复 1# feelsky


    修改数据的语句没有问题,至于二进制又是另外问题了
 楼主| 发表于 2012-7-30 20:15:31 | 显示全部楼层
回复  feelsky


    修改数据的语句没有问题,至于二进制又是另外问题了
auto 发表于 2012-7-30 19:55


上面的代码问题是数据是写进去了相同位置,但这样写进去好像就变成文本了。不是Blob类型了。
发表于 2012-7-30 22:35:39 | 显示全部楼层
附上config.db看看, 如有密码之类一同附上
 楼主| 发表于 2012-7-30 23:02:41 | 显示全部楼层
回复 5# auto

本帖子中包含更多资源

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

×
发表于 2012-7-31 20:08:20 | 显示全部楼层
回复 6# feelsky


    #NoTrayIcon
#include <SQLite.au3>
#include <SQLite.dll.au3>

Global $SQLite_Data_Path
$SQLite_Data_Path = @ScriptDir & "\config.db"
_SQLite_Startup() ;加载 SQLite.dll

$key = "homePage"
$HPvalue =  _SQLite_Encode(Binary("http://www.126.com"));;"0D 00 00 00 28 00 00 00 68 00 74 00 74 00 72 00"
ConsoleWrite($HPvalue)
_SQLite_Open($SQLite_Data_Path)
  _SQLite_Exec(-1, 'UPDATE config SET value = ' & $HPvalue & ' WHERE key = "' & $key & '";')
_SQLite_Close()
_SQLite_Shutdown() ;卸载 SQLite.dll
 楼主| 发表于 2012-7-31 22:03:44 | 显示全部楼层
本帖最后由 feelsky 于 2012-8-1 19:05 编辑

回复 7# auto

非常谢谢!学习了。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-15 10:43 , Processed in 0.112543 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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