2012-11-21 72 views
1

我一直在爲這一天的更好的一部分而努力。我完全無法在PyCharm中連接到我的數據庫。我甚至在從github上下載教程源碼的同時也會按照視頻教程。請幫忙!OperationalError:無法使用Flask IDE插件在PyCharm中打開數據庫文件

http://www.youtube.com/watch?v=jaFEODzG7B8 https://github.com/mitsuhiko/flask/tree/master/examples/flaskr/

# all the imports 
from __future__ import with_statement 
from contextlib import closing 
import sqlite3 
from flask import Flask, request, session, g, redirect, url_for,\ 
abort, render_template, flash 

# configuration 
DATABASE = "flaskr.db" 
DEBUG = True 
SECRET_KEY = 'development key' 
USERNAME = 'admin' 
PASSWORD = 'default' 

# create our little application :) 
app = Flask(__name__) 
app.config.from_object(__name__) 

def connect_db(): 
return sqlite3.connect(app.config['DATABASE']) 

def init_db(): 
    with closing(connect_db()) as db: 
    with app.open_resource('schema.sql') as f: 
     db.cursor().executescript(f.read()) 
    db.commit() 

if __name__ == '__main__': 
app.run() 

我收到以下錯誤,當我嘗試初始化數據庫:

>>> init_db() 
Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
    File "C:\Users\Intern2\PycharmProjects\flaskr\flaskr.py", line 23, in init_db 
    with closing(connect_db()) as db: 
    File "C:\Users\Intern2\PycharmProjects\flaskr\flaskr.py", line 20, in connect_db 
return sqlite3.connect(app.config['DATABASE']) 
OperationalError: unable to open database file 

字面上任何理論將不勝感激!

更新:我創建了數據庫文件,但現在我無法爲我的生活找到它。我已經嘗試過多個版本的路徑。

DATABASE = '/Users/snuffles753/PycharmProjects/flaskr/flaskr.db' 
DATABASE = 'flaskr.db 

等...該文件位於完全相同的地方作爲我的.py文件

另外,我使用的是Mac OS

+3

簡單;只需創建一個名爲'flaskr.db'的sqlite數據庫文件(把它放在'flaskr.py'存在的地方),然後從'schema.sql'爲該文件執行sql命令。 – namit

+0

當我運行init_db()方法時,儘管文件明顯存在,但無法找到該文件。 –

回答

2

的問題是,你需要有在您可以連接到它之前創建「flaskr.db」文件。它不是由它自己創建的。因此,請執行以下操作:

  1. 轉至flask.py代碼所在的目錄。運行以下命令:

    觸摸flaskr.db

  2. 確保權限允許此文件:

    搭配chmod 777 flaskr.db

+0

我的問題是,我無法找到該文件。注意:我也嘗試在這個項目中使用PyCharm IDE。我想知道這是否也給我一些問題。 –

+1

在教程視頻中奇怪的是,這個人從來沒有提到必須明確地創建.db,如果我試圖通過界面來做,它告訴我它不能讀取.db文件 –

+0

然而,問題的一部分是我的PyCharm設置是.db不是一個可識別的文件類型 –

相關問題