我在连接到我的sqlite数据库时遇到问题。该文件位于应用程序的文件夹中。这是连接字符串
string path = "Data Source=MY.db";
如果使用绝对路径,我可以使它工作,但是如果尝试使用相对路径,它会给我一个“找不到表”错误。有什么想法吗?
您正在打开一个不同的数据库,也许是一个没有新表的数据库。 (是的,SQLite将使用默认的连接设置愉快地创建一个新数据库。)确保正确
数据库已打开。请记住,relative路径是相对于Current Working Directory的,这可能不是预期的。((从哪个位置以及如何加载过程影响工作目录。例如,可以在项目设置/调试/开始选项下设置“调试”会话的工作目录。
快乐编码。
另请参见:
这是在使用GUI Manager for SQLite时没有保存数据库及其表的情况。两种解决方案;1)使用GUI管理器中的CTR + S保存数据库及其表2)或只需关闭SQlite的GUI管理器并保存所有。
我的Windows应用程序(C#)和Web应用程序(ASP.net)都遇到了相同的问题。我通常使用SQLite,因为我发现它更容易,尤其是在使用连接字符串时。但是对我来说,主要的障碍是在代码中放置一个相对路径,因此我可以发布它而不必担心找不到数据库。我已经尝试了许多方法(使用“ |数据目录|”,“〜/”,“ ./”,...),但是在找到这些解决方案之前,这些方法均无效。该代码似乎对我有用,但想知道我是否在正确使用它们?!