linux环境下sqlite数据库无法创建并连接 返回
参考的是.NET操作 Sqlite - SqlSugar 5x - .NET果糖网 (donet5.com)中的例子,在windows环境下没问题,但发布为.net6 linux包,总是报错。
热忱回答(21)
-
fate sta VIP02023/11/30
字符串改成
//相对路径 //ORM建库功能说明:建议不要加目录ORM没办法创建文件夹,如果加目录需要手动建文件夹 public static string ConnectionString= @"DataSource=SqlSugar4xTest.sqlite";
0 回复 -
fate sta VIP02023/11/30
不要用物理路径改成相对路径
0 回复 -
包子 VIP02023/11/30
@fate sta:还是不行。
0 回复 -
fate sta VIP02023/11/30
这个是驱动版本错误,是不是安装有问题
0 回复 -
fate sta VIP02023/11/30
独立安装 Microsoft.Data.Sqlite 最新版本 然后在试一下
0 回复 -
包子 VIP02023/11/30
@fate sta:这样?不行呢
0 回复 -
fate sta VIP02023/11/30
用我写的试一下
0 回复 -
包子 VIP02023/11/30
@fate sta:一样哦
0 回复 -
fate sta VIP02023/11/300 回复
-
fate sta VIP02023/11/30
用原生Open看能不能跑
0 回复 -
fate sta VIP02023/11/30
在我的DEMO上改
0 回复 -
包子 VIP02023/11/30
@fate sta:用指令dotnet publish --configuration Release --runtime linux-x64 --self-contained true发布的,没这个文件。要自己编译?
0 回复 -
teenty VIP02023/12/1
同样的问题
Data Source=/data/resource_db.db;Mode=ReadWriteCreate;
Data Source=resource_db;Mode=ReadWriteCreate;
都不行
给的建议 //ORM建库功能说明:建议不要加目录ORM没办法创建文件夹,如果加目录需要手动建文件夹
是只若创建db文件会有问题,若是连接读取已存在的db应该是没问题的,起码win中一直可以
猜测是linux独有的bug
0 回复 -
包子 VIP02023/12/1
感谢指点。要自己下载sqlite源码,手动编译此文件并放到工程目录才行。
0 回复 -
非西瓜 VIP02024/1/230 回复
-
fate sta VIP02024/2/20 回复
-
fate sta VIP02024/4/30
centos7.9 用户解决方案
反馈结果:
上周五那个centos7.9上sqlite环境问题我找到解决办法了,直接使用源码安装最新版sqlite3后,就能正常使用了,我是参照的这个教程
https://www.cnblogs.com/huaxiayuyi/p/16770739.html
//只要原生这个能跑,SqlSugar就能跑 new Microsoft.Data.Sqlite .SqliteConnection("datasource=xxx.db") .Open();
0 回复 -
Freedom VIP02024/4/30
@包子:我遇到了跟你类似的问题,有空帮我看一下吗
0 回复 -
fate sta VIP02024/6/30 回复
-
ffsquare VIP02024/6/25
问题主要是缺少链接库,使用的e_sqlite3.so。
参考下面链接下载最新的sqlite库
https://www.cnblogs.com/huaxiayuyi/p/16770739.html
上面的操作都做完后,在你的运行程序的根目录创建软链接
ln -s /usr/local/sqlite3/lib/libsqlite3.so [YouProgramRoot]/e_sqlite3.so
这样就可以正常连接数据库了。
0 回复 -
fate sta VIP02周前
OS 7.9 又一个用户解决方案
https://blog.csdn.net/qq_40817472/article/details/141648765
0 回复