2011-03-16 2 views
3

Lorsque je place mon fichier de base de données (qui est un fichier .sdb) dans un répertoire et que j'essaie d'y accéder à partir de ce répertoire, je reçois une erreur. L'erreur indique "impossible d'ouvrir le fichier de base de données". Par exemple, disons que mon fichier .sdb se trouve dans le répertoire "data" et que j'utilise la commande "con = lite.connect ('data \ noktalar.sdb')", cette erreur se produit. Pourquoi est-ce si?Erreur de base de données Python

Merci.

+0

Je pense que c'est parce que vous utilisez '\ n' dans cette chaîne qui est interprétée comme newline. Utilisez raw-string et voir ma réponse ci-dessous. –

Répondre

1

\ est le escape character dans les chaînes Python. Vous devez utiliser backslashes double:

con = lite.connect('data\\noktalar.sdb') 

Ou comme l'a dit Senthil, utiliser des chaînes premières:

con = lite.connect(r'data\noktalar.sdb') 

Pour plus d'informations, consultez le doc Python à propos string literals.

1

D'où vient votre processus python? Essayez de pointer vers le chemin absolu du fichier. Et lorsque vous pointez sur le chemin utilisez la chaîne brute r'c:\\mypath\data\notktalar.sub'

+0

Merci. Vous avez résolu mon problème. En fait, je n'ai pas besoin de spécifier le chemin complet. r'data \ noktalar.sdb 'est suffisant. – Shansal