aboutsummaryrefslogtreecommitdiff
path: root/examples/sqlite3test.tcl
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2010-11-03 15:37:39 +1000
committerSteve Bennett <steveb@workware.net.au>2010-11-03 18:57:02 +1000
commitbefc7190d7fdafd824c5a338362ab266761c6e75 (patch)
tree5e7d51430457fd68be9867683b2bbaa274efe637 /examples/sqlite3test.tcl
parenta2629855bac0ccb37e63d30a77ffe2da01fe4c12 (diff)
downloadjimtcl-befc7190d7fdafd824c5a338362ab266761c6e75.zip
jimtcl-befc7190d7fdafd824c5a338362ab266761c6e75.tar.gz
jimtcl-befc7190d7fdafd824c5a338362ab266761c6e75.tar.bz2
Fix some problems with the packaging system
Loadable modules should be tried before script packages. If a script accidentally tried to require itself, infinite recursion resulted. It is a bad idea to name a script the same as an extension/package. Also, keep the package name off the stack. Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'examples/sqlite3test.tcl')
-rw-r--r--examples/sqlite3test.tcl10
1 files changed, 10 insertions, 0 deletions
diff --git a/examples/sqlite3test.tcl b/examples/sqlite3test.tcl
new file mode 100644
index 0000000..982dd8a
--- /dev/null
+++ b/examples/sqlite3test.tcl
@@ -0,0 +1,10 @@
+package require sqlite3
+
+set db [sqlite3.open :memory:]
+$db query {CREATE TABLE plays (id, author, title)}
+$db query {INSERT INTO plays (id, author, title) VALUES (1, 'Goethe', 'Faust');}
+$db query {INSERT INTO plays (id, author, title) VALUES (2, 'Shakespeare', 'Hamlet');}
+$db query {INSERT INTO plays (id, author, title) VALUES (3, 'Sophocles', 'Oedipus Rex');}
+set res [$db query "SELECT * FROM plays"]
+$db close
+foreach r $res {puts $r(author)}