Ad
1: 2016-12-13 (火) 15:05:51 njf ソース バックアップ No.1 を復元して編集 2: 2016-12-13 (火) 17:47:59 njf ソース バックアップ No.2 を復元して編集
Line 1: Line 1:
*インストール [#rd1fa2b7] *インストール [#rd1fa2b7]
 +
 +SQLite自体のインストールは他の資料を参照してください。
 +MacやLinux系のシステムだと標準で入っていることが多いです。
 +
 +Pythonから使うAPIは標準ライブラリに入っているので、特にインストール作業は必要ありません。
 +
 +面倒な設定などもいらないので、ローカルで動くようなプログラムのちょっとした開発ならSQLiteを使うのがおすすめです。
 +
 +データベースの選び方については[[Python/データベースの選択]]を参照のこと。
*データベースへの接続・更新 [#s190360f] *データベースへの接続・更新 [#s190360f]
 +
 +「test.db」という名前のファイルを開き(無ければ制作し)、testというテーブルが無ければ制作し、データを1件追加するには以下のようにします。
 +
 + import sqlite3
 +
 + conn = sqlite3.connect('test.db')
 +
 + cursor = conn.cursor()
 +
 + cursor.execute("CREATE TABLE IF NOT EXISTS test (id int,data txt )")
 +
 + cursor.execute("INSERT INTO test VALUES (1,'This is test.')")
 +
 + conn.commit()
 +
 + conn.close()
 +
 +以下のように変数を外に出すこともできます。またマルチバイト文字も利用できますが、その時にはUnicode型を使わないといけません。
 + cursor.execute(u"INSERT INTO test VALUES (?,?)",(2,u'これはテスト'))
 +
 +こちらの方が特殊文字などをエスケープしてくれるので、SQLインジェクションなどに対しても安全です。
*データの参照 [#h41eb251] *データの参照 [#h41eb251]
 +
 +データの参照は以下のようになります。
 +
 + import sqlite3
 +
 + conn = sqlite3.connect('test.db')
 +
 + cursor = conn.cursor()
 +
 + cursor.execute("SELECT * FROM test;")
 +
 + for row in cursor:
 +     print row[0],row[1]
 +
 + conn.close()
 +
 +特に難しいところはないでしょう。


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 1944, today: 1, yesterday: 2
MenuBar
広告

ログイン

ユーザー名:


パスワード:





パスワード紛失

Portuguese | English | German | Greek | Japanese | Korean | Russian | T-Chinese top
NJF