2009-08-12
AirRecord [Flex]
airrecord - Project Hosting on Google Code
Adobe AIR向けのActiveRecordに基づいたO/Rマッピングライブラリ。とてもシンプルで使いやすい。
ADB開発中!Adobe Developer Box 開発日記 連載4) AIRによるActiveRecordの実装
使い方は上のページに書いてある通りだけどメモ(コピペ)っておく。
DB接続
var db:ARDatabase = ARDatabase.instance; db.add(userID, password, dbName, ddl, name, path); db.connect();
AIRのSQLiteを使う場合、userIDとpasswordはnullで良い。
ddl(Array)の各要素にSQL文を書いておくと、接続時にそれを実行してくれる。例えばCREATE TABLE文を書いておくと便利。
モデルクラス
public class Book extends ARModel { public function Book() { super(); this.__table = "books"; } }
テーブル名は複数形で、モデルクラス名は単数形。
INSERT
var book:Book = new Book(); var result:SQLResult = book.insert({name: "My Notebook"}); var id:Number = result.lastInsertRowID;
SELECT
var books = book.find( {id:1, name:"My Notebook"}, // WHERE "name ASC", // ORDER BY "10" // LIMIT ); books[0].name;
一件だけ取得
book.findone({id:1}); // --> {id:1, name:"My Notebook"}
生SQL
book.query("SELECT * FROM books WHERE name LIKE 'My%'");
UPDATE
book.update( {id: 1}, // WHERE {name: "Sample Book"} // SET );
DELETE
book.del({id: 1});