JSON欄位型別在ORM中的使用
JSON欄位型別在ORM中的使用
ThinkPHP5.1版本正式釋出已經有一段時間了,我會陸續給大家介紹其中的新特性。今天要給大家介紹的是一個可能很多使用者還不瞭解的一個特性:JSON欄位資料支援。
不過首先注意一點,本篇內容中描述的JSON欄位資料的支援是從V5.1.4+版本引入的。由於包含安全更新的原因,建議確保使用5.1.9+版本。
本篇中對JSON欄位的定義包括JSON型別或者儲存的資料為JSON格式的字元型別,所以理論上除了使用JSON欄位條件查詢外,對資料庫型別和版本沒有要求。
Db類操作JSON
如果你沒有使用模型類,Db類提供了一個json方法可以指定你的資料表JSON格式欄位。例如你的user表有一個info欄位是JSON型別的,你可以使用下面的方式運算元據。
資料寫入
$user['name']='thinkphp';
$user['info']=[
'email'=>'thinkphp qq.com',
'nickname'=>'流年',
];
Db::name('user')
->json(['info'])
->insert($user);
json方法的引數是一個陣列,示例中指定了info欄位,其實可以指定多個JSON型別欄位。
資料查詢
查詢整個JSON資料使用。
$user=Db::name('user')
->json(['info'])
->find(1);
dump($user);
返回的查詢結果資料中,會自動包含一個陣列型別的info資料,也就是說JSON格式資料已經自動json_decode處理。
該方式查詢對info欄位並非嚴格要求使用JSON型別
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69926583/viewspace-2680585/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL 中 JSON 欄位的使用技巧MySqlJSON
- MySQL中JSON欄位的使用技巧MySqlJSON
- mac 使用 sed 抽取 json 中的欄位MacJSON
- Django-ORM 之指定欄位別名DjangoORM
- MySQL中TEXT與BLOB欄位型別的區別MySql型別
- Django框架:8、聚合查詢、分組查詢、F與Q查詢、ORM查詢最佳化、ORM事務操作、ORM常用欄位型別、ORM常用欄位引數Django框架ORM型別
- MongoDB更改欄位型別MongoDB型別
- MySQL欄位新增註釋,但不改變欄位的型別MySql型別
- sql語句修改欄位型別和增加欄位SQL型別
- Go 中時間型別欄位的 JSON 序列化和反序列化的處理技巧Go型別JSON
- ES Mapping ,1 欄位型別APP型別
- MySQL欄位型別最全解析MySql型別
- [提問交流]建立模型,新增屬性,欄位型別如何設定2位小數的欄位型別模型型別
- 關於mysql中欄位定義的型別int、tinyint區別MySql型別
- 如何理解 package.json 中的 proxy 欄位?PackageJSON
- 使用plsql 匯出欄位為json 格式SQLJSON
- SAP WM中階儲存型別裡的Full stk rmvl 欄位和Return Storage type欄位型別
- 在 with 查詢中只查詢個別欄位
- 【mongo】mongo 欄位型別互轉Go型別
- 使用 Eloquent ORM 使用 with 模型關聯查詢,如何處理select不同模型的欄位(欄位名可能相同)ORM模型
- kettle從入門到精通 第八十課 ETL之kettle kettle中的json物件欄位寫入postgresql中的json欄位JSON物件SQL
- 多型關聯自定義的型別欄位的處理多型型別
- 為什麼資料庫表的int型別欄位對映到實體類中要使用Integer型別,而不是int型別?...資料庫型別
- 資料庫中欄位資料型別以及約束資料庫資料型別
- 查詢mysql某張表中的所有資料(欄位)型別MySql型別
- mysql表操作(alter)/mysql欄位型別MySql型別
- Oracle 修改欄位型別和長度Oracle型別
- PHP 操作 mysql blob 資料型別的欄位PHPMySql資料型別
- 列舉型別在JPA中的使用型別
- JSON在Python中的使用JSONPython
- 地理位置經緯度在Mysql中用什麼欄位型別MySql型別
- 欄位管理,為什麼只有新增的時候才自動匹配欄位型別型別
- SQL中欄位比較型別不匹配錯誤:‘cannot be cast to’SQL型別AST
- Django之ORM常用欄位和引數DjangoORM
- json轉化保留null欄位JSONNull
- 將多個JSON欄位對映到單個Java欄位JSONJava
- odoo ORM研究3 - odoo fields常用的欄位屬性OdooORM
- MYSQL SET型別欄位的SQL操作知識介紹MySql型別