2010-02-03 54 views

回答

94

你给创建'D:\\aaa.db'如果它不存在的代码。

4

很确定.connect会创建文件,如果它不存在。

10

如果没有自动创建它,请确保您有正确的

0

.connect应动态创建一个新的数据库文件的目录的权限,给予子目录确实存在,并且有足够的应用权限。

+3

尽管答案是正确的,但它并没有增加任何价值:以前都说过 – cfi 2013-09-11 16:51:13

2
import sqlite3 
conn=sqlite3.connect('xx.db') 
print "Database created and opened succesfully" 
5

如前所述,如果您有权限为此路径编写代码,则您的代码应该可以工作。但是,重要的是目录必须存在。如果您呼吁不存在的文件夹:

conn = sqlite3.connect(r"D:\Some new non-existing folder\aaa.db") 

它不会工作,你将有

sqlite3.OperationalError: unable to open database file. 

这同样适用于相对路径:

1) conn = sqlite3.connect(r"aaa.db") 
2) conn = sqlite3.connect(r"Some new folder\aaa.db") 

首先将始终工作,因为你在已经存在的目录中工作,如果你事先没有创建te文件夹,那么第二个将不起作用。

相关问题