星期五, 4月 03, 2009

[Note]Seed(4) - Database

Seed 也支援對資料庫的存取,目前只支援 SQLite。
用法也超級簡單...

基本上只有 constructor 跟用來執行 SQL 的 exec()。以下代碼來自源碼裡 (modules/sqlite/example.js):

#!/usr/local/bin/seed
Seed.import_namespace("sqlite");
d = new sqlite.Database(Seed.argv[2]);

d.exec("create table t1 (t1key INTEGER PRIMARY KEY,data TEXT,num double,timeEnter DATE);");
d.exec("insert into t1 (data,num) values ('This is sample data',3);");
d.exec("insert into t1 (data,num) values ('More sample data',6);");
d.exec("insert into t1 (data,num) values ('And a little more',9);");

d.exec("select * from t1", function(results){Seed.print(JSON.stringify(results))});


取出資料的作法則是將 callback 傳入,以處理一筆 record。上面是用 JSON 輸出整筆 record 內容,其實你也可以將欄位名稱代入 indexer 來取得該欄內容:

d.exec("select * from t1", function(results){Seed.print(results["data"])});

沒有留言: