在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

SQLite中多个应用程序是否可以同时访问单个数据库文件吗

104次阅读
没有评论

共计 948 个字符,预计需要花费 3 分钟才能阅读完成。

本篇文章为大家展示了 SQLite 中多个应用程序是否可以同时访问单个数据库文件吗,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

多个进程可以同时打开同一个数据库。多个进程可以同时执行 SELECT。但是,只有一个进程可以随时对数据库进行更改。

SQLite 使用读 / 写锁来控制对数据库的访问。(在 Win95 / 98 /  ME 下,缺少对读写锁的支持,而是使用概率模拟。)但请注意:如果数据库文件保存在 NFS 文件系统上,则此锁定机制可能无法正常工作。这是因为许多 NFS 实现都会破坏 fcntl()文件锁定。如果多个进程可能同时尝试访问该文件,则应避免将 SQLite 数据库文件放在 NFS 上。在 Windows 上,Microsoft 的文档说如果您没有运行 Share.exe 守护程序,则在 FAT 文件系统下锁定可能不起作用。对 Windows 有很多经验的人告诉我,网络文件的文件锁定是非常错误的,并且不可靠。

我们知道没有其他嵌入式  SQL 数据库引擎支持与 SQLite 一样多的并发性。SQLite 允许多个进程一次打开数据库文件,并允许多个进程一次读取数据库。当任何进程想要写入时,它必须在更新期间锁定整个数据库文件。但这通常只需要几毫秒。其他流程只是等待作者完成然后继续他们的业务。其他嵌入式 SQL 数据库引擎通常只允许单个进程一次连接到数据库。

但是,客户端 / 服务器数据库引擎 (如 PostgreSQL,MySQL 或 Oracle) 通常支持更高级别的并发性,并允许多个进程同时写入同一数据库。这在客户端 / 服务器数据库中是可能的,因为总有一个良好控制的服务器进程可用于协调访问。如果您的应用程序需要大量并发,那么您应该考虑使用客户端 / 服务器数据库。但经验表明,大多数应用程序需要的并发性远低于设计人员的想象。

当 SQLite 尝试访问由另一个进程锁定的文件时,默认行为是返回 SQLITE_BUSY。您可以使用 sqlite3_busy_handler()或 sqlite3_busy_timeout()  API 函数从 C 代码调整此行为。

上述内容就是 SQLite 中多个应用程序是否可以同时访问单个数据库文件吗,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-17发表,共计948字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 亚洲一区二区高清 | 国产成人综合亚洲一区 | 国产精品好好热在线观看 | 看日本黄色大片 | 天天摸天天碰天天爽天天弄 | 亚洲欧洲第一页 | 麻豆精品久久久久久中文字幕无码 | 欧美在线视频一区在线观看 | 欧美成人精品免费播放 | 淫片视频| 乌克兰大乳美女一级毛片 | 丰满少妇69激情啪啪无 | 高清亚洲综合色成在线播放放 | 国产99视频精品免费视频76 | 色就是欧美| 在线观看丝袜国产 | 国产精品一区二区久久 | 久久久男人天堂 | 久久精品国产亚洲av电影 | 日日摸夜夜添夜夜爽免费视频 | 亚洲av无码国产在丝袜线观看 | 亚洲第一性网站 | 国产情侣作爱视频免费观看 | 免费观看a级网站 | a级在线视频| 久久精品国产亚洲av香蕉 | 日本xxx在线观看免费播放 | 一级一毛片a级毛片 | 中文字幕视频在线免费观看 | 全免费a级毛片免费看视频 全免费a级毛片免费看视频免 | 国产精品二区一区二区aⅴ污介绍 | 韩国一级淫片视频免费播放 | 成人做爰视频www | 无码国产69精品久久久久网站 | 在线电影一区 | 九九亚洲精品 | 欧美叉叉叉 | 日日摸夜夜添夜夜添特色大片 | 九九久久自然熟的香蕉图片 | 精品日本亚洲一区二区三区 | 日本丰满妇人成熟免费中文字幕 |