2016-01-11 51 views
2

我使用this tutorial来学习烧瓶。在第二段它说,使用这个命令:从Windows 8中的.sql文件创建sqlite3数据库

sqlite3 /tmp/flaskr.db < schema.sql 

但我使用的是Windows 8,我所能做的,而不是该命令的是什么?这是我的SQL代码:

drop table if exists entries; 
create table entries (
    id integer primary key autoincrement, 
    title text not null, 
    text text not null 
); 
+0

我认为这是sqlite3.exe。所以你可以用Cmd中的参数来调用它。但也许有点不同 – etalon11

+0

不,我不能在sqlite3中使用此命令。我测试了它。你能告诉它我怎样才能从cmd调用它? –

回答

1

只要保持以下教程通过添加init_db方法和运行下面的python脚本:

# all the imports 
import sqlite3 
from flask import Flask 
from contextlib import closing 

# configuration 
DATABASE = './flaskr.db' 
DEBUG = True 


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

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


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

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

,使之简单,数据库文件flaskr.db会被创建在当前目录和schema.sql应该也在那里...

+0

非常感谢你,这个脚本为我工作。但让我问2个问题:我可以将SECRET_KEY和USERNAME和PASSWORD添加到此脚本中?此脚本和使用.read schema.sql有什么区别,并将其保存为sqlite3.exe中的flaskr.db? –

+0

是的,您可以在脚本中添加其他字段,例如SECRET_KEY,USERNAME,它与运行sqlite3 flaskr.db

相关问题