作者waiter337 (给开司一罐苏格登)
看板C_Sharp
标题Re: [问题] windows form如何开启sqlite db档?
时间Thu Jan 20 11:38:48 2022
不好意思 借原po的题目发挥一下
目前是写VB.NET
一样是用SQLite 我连到google chrome History
位置通常在
C:\Users\xxxxx\AppData\Local\Google\Chrome\User Data\Default\History
我遇到一个状况
当我OPEN完之後
reader = cmd.ExecuteReader
跑到上述这一行
就一直报错 而且一直报不停
https://imgur.com/a/ruR5ige
https://i.imgur.com/4KKbVqF.png
SQLite error (5): database is locked in "SELECT url from (SELECT * from urls
ORDER BY id DESC LIMIT 1 )"
原因:只要chrome 处在开启状态 这个就不会让我进去read
只要chrome关闭 就能正常读取到最後一个的网址
或者额外复制一个history出来处理也可以 不过速度就会变慢很多
尤其当history大到几mb的时候 会特别慢...
请问有没有甚麽方法可以绕过被其他程序开启的方式
或者请大大提供一些不同方向的意见
目前因为工作需求 我必须要获得history最後一个 网址
补充一点:
chrome 扩充工具有很多SQLite检视器 一样能够打开chrome history
上述就是在chrome开启时能够使用sqlite进去找的
但自己写一套reader = cmd.ExecuteReader
在chrome未关闭时 就被资料库lock挡下来
百思不解= =
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.242.188.231 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1642649930.A.A39.html
※ 编辑: waiter337 (111.242.188.231 台湾), 01/20/2022 12:16:43
1F:→ ssccg: SQLite不支援多process存取,一次只能一支程式开档案啊 01/20 13:31
2F:→ ssccg: 档案型DB通常都常都是这样,不然要怎麽保证ACID 01/20 13:32
3F:→ ssccg: chrome扩充工具是跑在Chrome的process里面,当然不一样 01/20 13:33
4F:→ ssccg: 不然你也写Chrome扩充工具不就好了 01/20 13:33
5F:→ ssccg: 你的winform程式开个local server,扩充工具连上你的server 01/20 13:34
6F:→ ssccg: 有SQL要执行都丢给扩充工具去跑 01/20 13:34
感谢大大解惑
※ 编辑: waiter337 (111.242.188.231 台湾), 01/20/2022 13:52:24