我在设计一个小的网络应用程序/游戏。还有什么更好: MySQL表还是json文件?他们都储存信息。它们都可以被PHP解析。什么是优点/缺点?
这就是我的意思:
username | password
-------------------
seefour | abc123与
{
"username":"seefour",
"password":"abc123"
}发布于 2011-11-02 18:25:25
坦率地说,MySQL是一个数据库,而JSON不是,所以正确的答案是MySQL,毫不犹豫。JSON只是一种语言,甚至几乎都不是那种语言。JSON从未被设计用于处理任何类似并发连接或任何类型的数据操作,因为它自己的功能是表示数据,而不是管理数据。
因此,使用MySQL来存储数据。然后,您应该使用一些编程语言来读取数据库,并以JSON的形式发送该信息,而不是将任何信息实际存储在JSON中。
如果您将数据存储在文件中,无论是以JSON格式还是其他任何形式,您都会遇到自数据库开始用于同一件事以来人们不再担心的各种问题。大小限制,锁,命名。如果您有一个用户,这就足够了,但是当您添加更多的用户时,您将开始解决太多的问题,最终可能只需要编写一个完整的数据库引擎来为您处理文件,而一直以来,您都可以只使用一个实际的数据库。
发布于 2011-11-02 18:16:57
由于许多原因,MySQL更可取,其中最不重要的是您不希望您的web服务器进程对文件系统有写访问权(可能日志除外),因为这是一种容易被利用的方法。
此外,MySQL团队在复制、并发数据访问、ACID遵从性和数据完整性等方面投入了大量的工程工作。
例如,假设您在存储的任何数据结构中添加了一个所需的新字段。如果存储在JSON文件中,则必须有一些进程打开每个文件,添加字段,然后保存它。将这与为字段使用默认值ALTER的难度进行比较。(这是一个人为的例子,但是您想在代码库中留下多少个黑客来处理旧数据呢?)
发布于 2011-11-02 18:09:58
这两种情况并不是完全可比的。
MySQL将数据存储在数据库中,或者实际上是数据库。JSON以要传递到和从服务器传递给客户端的格式存储数据。Javascript/jquery可以使用JSON作为数据对象,但它们只存在于客户端,用于页面的生命周期。
因此,如果您想将数据存储为JSON(不推荐),您可能需要将它们存储为文本文件来保存数据。
您应该将数据存储在数据库中。使用函数将其转换为JSON格式,然后将其传递到网页,以便javascript消费并呈现给用户。
https://stackoverflow.com/questions/7985145
复制相似问题