annotate Doc/includes/sqlite3/load_extension.py @ 79675:c0a2294de787 2.7

Issue #16199: Backport 2to3 typo fix from 3.2.
author Chris Jerdonek <chris.jerdonek@gmail.com>
date Thu, 11 Oct 2012 16:15:46 -0700
parents 04d3ae52ff73
children 74d81a3a0d56
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
59362
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
1 import sqlite3
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
2
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
3 con = sqlite3.connect(":memory:")
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
4
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
5 # enable extension loading
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
6 con.enable_load_extension(True)
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
7
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
8 # Load the fulltext search extension
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
9 con.execute("select load_extension('./fts3.so')")
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
10
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
11 # alternatively you can load the extension using an API call:
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
12 # con.load_extension("./fts3.so")
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
13
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
14 # disable extension laoding again
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
15 con.enable_load_extension(False)
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
16
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
17 # example from SQLite wiki
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
18 con.execute("create virtual table recipe using fts3(name, ingredients)")
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
19 con.executescript("""
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
20 insert into recipe (name, ingredients) values ('broccoli stew', 'broccoli peppers cheese tomatoes');
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
21 insert into recipe (name, ingredients) values ('pumpkin stew', 'pumpkin onions garlic celery');
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
22 insert into recipe (name, ingredients) values ('broccoli pie', 'broccoli cheese onions flour');
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
23 insert into recipe (name, ingredients) values ('pumpkin pie', 'pumpkin sugar flour butter');
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
24 """)
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
25 for row in con.execute("select rowid, name, ingredients from recipe where name match 'pie'"):
04d3ae52ff73 Merged code from pysqlite 2.6.0.
Gerhard Häring <gh@ghaering.de>
parents:
diff changeset
26 print row