2010-12-03 3 views
0

sqlite3.exeをダウンロードしました。これはコマンドプロンプトとして開きます。私はそれにいくつかのエントリが挿入されたテーブルテスト&を作成しました。私は.backup testを使用しました。 .exitを使用してプログラムを終了してからもう一度開きますが、.tablesの下にテーブルがありません。また、クエリを実行することはできません。sqlite 3でテーブルを作成するには?

私はすぐにこのテーブルを利用するオープンソースのPythonプログラムを実行する必要があります。&私はMySQLで作業しましたが、sqliteについての手掛かりはありません。私はsqliteの最小限の基本が必要です。誰かがこれを通って私を導くことができますか、少なくとも私のテーブルを永久に保存する方法を教えてください。

私はこのsqlite3.exeをPythonフォルダに入れました。これは、pythonがsqliteファイルを読み取ることができると仮定しています。これに関するアイデア?

答えて

4

sqlite is built in to Python
あなたはこのようなあなたのテーブルにアクセスすることができるはずです。

import sqlite3 
conn = sqlite3.connect('/path/to/my.db') 
curs = conn.cursor() 
curs.execute("SELECT a_column FROM my_table;").fetchone() 
curs.close() 
conn.close() 

あなたは、同様のPythonからあなたのDDL文を実行することができます。
commitに変更があることを確認してください。

curs.execute("CREATE TABLE my_table (a_column text);") 
conn.commit() 
+0

最初のデータベースはどのように作成しますか?私はmy.dbを持っていないのですか? – Gaurav

+0

@Gaurav: 'conn = sqlite3.connect( '/ path/to/my.db')'はデータベースが存在しない場合は作成します。 – bernie

+0

ありがとうございます。私は 'conn = sqlite3.connect( '/ Data/patent.db')'を使いました。 'inv'という名前で作成したこのテーブルを削除する必要があるので、このファイルの作成場所を知っていますか?私は 'c.execute(" drop table patent.inv ")'を使用しましたが、私はこれを受け取ります:OperationalError:そのようなテーブルはありません:patent.inv' – Gaurav

0

sqlite3 foo.dbを実行するだけですか?これにより、後で行うすべてのファイルがこのファイルに永久に保存されます。 (.backupの必要はありません)

1

なぜsqlite3.exeをダウンロードしたのですか? Pythonはすでにsqlite3を同梱して出荷する必要があります。 import sqlite3は、あなたが最近のPythonディストリビューションを持っている限り、あなたがする必要があります。 問題:sqlite3がデフォルトでメモリにテーブルを作成すると思います。 Pythonを使用する場合、データベースに接続するにはdbConn = sqlite3.connect("somefile")が必要です。その後、dbCursor = dbConn.cursor()を使用してこのファイルに接続できます。カーソルは、execute(command)メソッドを呼び出してSQLコマンドを実行できます。例: dbConn.execute("create table test (row text, otherrow real)") 最後に、dbConn.commit()に電話して、データベースで変更したものすべてを保存する必要があります。 Pythonのドキュメントには、他のすべてが分かっています。 http://docs.python.org/library/sqlite3.html

+0

「somefile」とは何ですか?私がPythonをインストールしただけで、データベースがない場合、どのファイルに接続すればよいですか? – Gaurav

関連する問題