gpt4 book ai didi

sqlite - 为什么 SQLite 说它无法从文件中读取 SQL?

转载 作者:行者123 更新时间:2023-12-02 21:03:52 27 4
gpt4 key购买 nike

我在一个文件中有一堆 SQL,用于创建表等。问题是,当我尝试执行 .read 命令时,它只是返回“无法打开 xxx”。我已将权限设置为每个人读/写,但这没有帮助。我可以从命令行 cat 该文件并看到它很好。

这是在 Mac OS 10.6.3 下。

这里有人有什么想法吗?谢谢!

最佳答案

这是 shell.c 中的源代码,其中 sqlite3 实用程序执行 .read 并尝试读取 .sql 文件:

  if( c=='r' && strncmp(azArg[0], "read", n)==0 && nArg==2 ){
FILE *alt = fopen(azArg[1], "rb");
if( alt==0 ){
fprintf(stderr,"can't open \"%s\"\n", azArg[1]);
}else{
process_input(p, alt);
fclose(alt);
}
}else

您可以看到,仅当调用 fopen 时,该实用程序才会打印“can't open xxx”失败。遗憾的是他们不会为您打印 errno,但此信息确实可以帮助您缩小问题范围,因为该问题并非特定于 sqlite。

您指定的路径错误(尝试引用它),您没有权限,或者该文件确实不存在(这意味着您使用 cat 的方式有所不同.read,就像当前目录不同)。

关于sqlite - 为什么 SQLite 说它无法从文件中读取 SQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2792243/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com