之前使用過 Rails 的人一定會對 ActionRecord 這個 ORM 實現有比較深的印象。
所謂 ORM 即 Object-Relational Mapping,是指將主流的關系型數據庫轉化為類與對象
從而達到與面向對象程序設計相結合的目的,從而能更方便、自由的使用數據庫資源。
python orm框架,ORM 中將數據庫中的表映射為一個類,表的字段成為類中的變量,表中的每一個
記錄都映射為一個表類的實例,記錄中的各數據則用來初始化類的屬性。
這是一個比較簡單而直觀的方式,很多框架都有各自的 ORM? 實現。這里先給出測
試(測試就像是指南針,避免你迷失在代碼海洋里)。
java orm框架有哪些、1 print_r(Model::clear(all));
2
3 $tags = new Model(); //create a new table named as tags;4 $tags->title = 'varchar(40)';
5 $tags->date = 'timestamp default now()';
Java orm、6 print_r($tags->create());
7
8 $posts = newModel();
9 $posts->title = 'char(100)';
php java、10 $posts->date = 'timestamp default now()';
11 $posts->content = 'varchar(800)';
12 print_r($posts->create());
13
php、14 $users = new Model();
15 $users->name = 'char(40)';
16 $users->email = 'char(40)';
17 $users->password = 'char(32)';
java框架。18 $users->regist_date = 'timestamp default now()';
19
20 print_r($users->create());
這里創建了三個表, users, posts 和 tags。 這里創建表的方式看起來有些笨拙但
比較直觀。似乎沒有什么方便的地方,不過之后可以根據需要進行更新代碼,畢竟這還只是
初級版本。(各種完整的數據庫操作需要日后補全)
輸出結果如下:
1 DROP ALL TABLES DONE!
2 CREATE TABLE tags DONE!
3 CREATE TABLE posts DONE!
4 CREATE TABLE users DONE!
下面看看表的使用,還是代碼:
1 $a= new Users();
2
3 //find record4 $users = $a->find_by_name('kk');
5 $users = $a->find_by_name('zhangbo');
6
7 //create a new record;8 $b = new Users();
9 $b->name = 'fine';
10 $b->email = 'fine@gmail.com';
11 $b->save();
輸出為:
1Users::find_by_name("kk") has 0 result!
2Users::find_by_name("zhangbo") has 0 result!
因為此前數據庫中并不存在任何數據,所以輸出的結果都是空的。但此時的 $b->save()
會向數據庫中寫入一個新的 record。 所以最后我們有了一個持久化的結果。這里的 find_by_
使用了 php 中的一些魔術函數,以期獲得動態的 find 函數,如 find_by_id、find_by_name,
find_by_name_and_id 等。
詳細的代碼稍后給出。
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态