Python 在Windows 8中从.sql文件创建sqlite3数据库

Python 在Windows 8中从.sql文件创建sqlite3数据库,python,sql,windows,sqlite,flask,Python,Sql,Windows,Sqlite,Flask,我在用学习瓶。在第二段中,它说要使用这个命令: sqlite3 /tmp/flaskr.db < schema.sql 只需添加init_db方法并运行以下python脚本,继续遵循教程: # all the imports import sqlite3 from flask import Flask from contextlib import closing # configuration DATABASE = './flaskr.db' DEBUG = True # crea

我在用学习瓶。在第二段中,它说要使用这个命令:

sqlite3 /tmp/flaskr.db < schema.sql

只需添加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也应该在那里…

我认为这是sqlite3.exe。因此,您可以使用Cmd中的参数调用它。但是可能有点不同,我不能在sqlite3中使用这个命令。我测试过了。你能告诉我如何从cmd调用它吗?非常感谢。这个脚本对我很有用。但让我问两个问题:我可以向这个脚本添加密钥、用户名和密码吗?这个脚本和使用.read schema.sql并在sqlite3.exe上将其另存为flaskr.db有什么区别?是的,你可以添加其他字段,例如SECRET\u KEY,脚本中的用户名,它与运行sqlite3 flaskr.db# 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()