我正在寻找可以将json转换为sql的PHP库。 也就是说,基于某些定义或模式,它应该生成插入/更新语句。
有人知道这样的图书馆吗?我问了几个搜索引擎,什么都没弹出来。
示例:
JSON
{
"person_id": 1,
"name": "John Doe",
"roles": ["admin","editor","regular_user"],
"friends":
[
{"person_id": 10, "name": "Johny Walker", "is_best_friend": true},
{...} // more friends
]
}
表格结构:
Persons: person_id (int), name (text)
Roles: person_id (int), role (text)
Friends: person_id (int), is_best_friend (bool)
这只是一个例子。
我想到的是类似XSLT的转换。我知道这样的系统会非常复杂,但这个简单的例子可以毫无问题地翻译出来。
我正在考虑自己实施它,但我很懒,所以先问一下。
高级JSON的东西,比如引用,也可以实现,因为它非常适合关系表(可能有限制)。
答案 0 :(得分:2)
SQL数据结构简单且具有严格的“硬编码”结构,但JSON可以存储对象,这些对象可以相互继承。我不认为,这样的工具存在。即使是ID,也会有很多限制。
答案 1 :(得分:0)
您真正需要搜索的是ORM。
典型的编程结构与sql的工作方式有很大不同,这称为Object-relational impedance mismatch。尝试将对象或数组结构映射或转换为数据库模式并非易事,因为它需要了解有关每个值的两个数据结构和规则集。