import sqlite3
conn = sqlite3.connect(r"D:\aaa.db")
¿Hay alguna manera de crear automáticamente el archivo db si no existe cuando me conecto?Cómo crear una nueva base de datos (llamada xx.db) usando python y sqlite3
gracias
import sqlite3
conn = sqlite3.connect(r"D:\aaa.db")
¿Hay alguna manera de crear automáticamente el archivo db si no existe cuando me conecto?Cómo crear una nueva base de datos (llamada xx.db) usando python y sqlite3
gracias
El código que da qué crear 'D:\\aaa.db'
si no existe.
Bastante seguro .connect creará el archivo si no existe.
Si no se crea automáticamente, asegúrese de que tiene los permisos de directorio correctos
.Connect debe crear un nuevo archivo de base de datos sobre la marcha, existen dados subdirectorios, y usted tiene para conceder permiso adecuado.
Si bien la respuesta es correcta, no agrega ningún valor: todo se ha dicho antes – cfi
import sqlite3
conn=sqlite3.connect('xx.db')
print "Database created and opened succesfully"
Como ya se mencionó, su código debería funcionar si tiene permisos para escribir en esta ruta. Sin embargo, es importante que el directorio debe existir. Si usted hace llamado a que no existe la carpeta:
conn = sqlite3.connect(r"D:\Some new non-existing folder\aaa.db")
No va a funcionar, tendrá
sqlite3.OperationalError: unable to open database file.
Lo mismo es para las rutas relativas:
1) conn = sqlite3.connect(r"aaa.db")
2) conn = sqlite3.connect(r"Some new folder\aaa.db")
En primer lugar siempre funciona , porque está trabajando en el directorio ya existente y el segundo no funcionará si no crea la carpeta de antemano.
¿Estás preguntando cómo funciona SQLite3 cuando crea una base de datos nueva y vacía? –
por lo que desea comprobar si el db está allí si no lo crea? – Euclid