import sqlite3
conn = sqlite3.connect(r"D:\aaa.db")
Is there a way to automatically create the db file if it doesn't already exist when I connect to it?
import sqlite3
conn = sqlite3.connect(r"D:\aaa.db")
Is there a way to automatically create the db file if it doesn't already exist when I connect to it?
As it was already mentioned, your code should work if you have permissions to write for this path. However, it is important that directory must exist. If you make call for non-existing folder:
conn = sqlite3.connect(r"D:\Some new non-existing folder\aaa.db")
It will not work, you will have
sqlite3.OperationalError: unable to open database file.
The same is for relative paths:
1) conn = sqlite3.connect(r"aaa.db")
2) conn = sqlite3.connect(r"Some new folder\aaa.db")
First will always work, because you are working in already existing directory and second will not work if you do not create te folder beforehand.
.connect should create a new database file on the fly, given sub-directories do exist, and you have adequate permissioning.