-2

我已经尝试在任何地方找到解决方案,但不能。

这是我正在尝试做的事情:

我的数据库中有一个包含多个条目的单元格(类似于 XML 文件)。以下是以下几行:

main_description=""
main_multiblogger=1
main_comment="1"
main_comment_multiple="0"

我将如何对 SELECT 和 UPDATE 特定值运行查询?我是否必须解析它才能实现我的目标?

谢谢!

4

2 回答 2

1

是的,如果您将半结构化数据* 存储在单个列中,那么使用 SQL 表达式来选择或更新数据中的单个元素就很困难或不可能。

您需要将整个列选择回您的应用程序,将其解析出来,以您想要的方式对其进行修改,然后将其完全更新到数据库中,覆盖旧值。

* “半结构化”是指数据具有您理解的结构,但 SQL 没有。

于 2012-12-09T23:33:09.213 回答
0

这取决于“特定值”是什么。
一种方法可能是:

SELECT * FROM table_name WHERE column_name='main_comment="1"'

或者:

SELECT * FROM table_name WHERE column_name LIKE 'main_comment=%'

也许您应该考虑将列拆分为keyand value

SELECT * FROM table_name WHERE key='main_comment'

或者:

SELECT * FROM table_name WHERE key='main_comment' AND value='1'

如果其中一个对您有用,您可以对UPDATE声明做同样的事情。

于 2012-12-09T23:40:47.090 回答