1

ローカルの sqlite データベースから読み書きする基本的なデータ I/O スクリプトを Python でセットアップしようとしています。コマンド ラインを使用して、スクリプトが期待どおりに動作することを確認したいのですが、作成中のデータベースまたはテーブルが検出されません。

最初のスクリプトは dict からテーブルにデータを書き込み、2 番目のスクリプトはそれを読み取って出力します。

書く:

# スクリプトの最初の部分は、'totals' という辞書を作成します

sqlite3 をライトとしてインポート

con = lite.connect('test.db')

コン付き:
    cur = con.cursor()

    cur.execute("DROP TABLE IF EXISTS testtbl")    

    cur.execute("CREATE TABLE testtbl(Date TEXT PRIMARY KEY, Count INT, AverageServerTime REAL, TotalServerTime REAL, AverageClientTime REAL, TotalClientTime REAL)")
    cur.execute('INSERT INTO testtbl VALUES("2012-09-08", %s, %s, %s, %s, %s)' % (float(totals['count()']), float( totals['serverTime/count()']), float(totals['serverTime']), float(totals['totalLoadTime/count()']), float(totals['totalLoadTime'])))

読んだ:

sqlite3 をライトとしてインポート

con = lite.connect('test.db')

コン付き:    

    cur = con.cursor()    
    cur.execute("SELECT * FROM testtbl")

    行 = cur.fetchall()

    行の行の場合:
        行を印刷

これらのスクリプトは別々で、どちらも正常に動作します。ただし、コマンド ラインでディレクトリに移動して sqlite3 をアクティブにしても、それ以上何も機能しません。「.databases」、「.tables」、「.schema」コマンドを試しましたが、この特定のデータベースに応答できません。コマンドラインでデータベースを作成して表示できますが、スクリプトで作成したデータベースは表示できません。これらをリンクするにはどうすればよいですか?

ストック Ubuntu 12.04、Python 2.7.3、SQLite 3.7.9 を実行しています。libsqlite3-dev もインストールしましたが、役に立ちませんでした。

4

1 に答える 1

2

コマンドにDBファイル名を入れていますか?

$ sqlite3 test.db

于 2012-09-10T22:37:04.593 に答える