java - 尝试通过 MySQL 正确保存/加载数组

标签 java mysql arrays

所以我有一组 PlayerNames,它们位于我需要保存的特定“氏族”中,因此当我加载服务器时,它将遍历所有条目。

这是我目前拥有的 MySQL表

enter image description here

不确定我会为“成员”添加什么,基本上我想要的是存储我拥有的数组的 UUID。它可以作为字符串出现,但我只需要它们能够像这样存储

成员:uuid,uuid,uuid,uuid

我了解如何构建连接、ResultSet 和 Statement 部分,我只是不知道如何让 MySQL 知道我正在尝试将这些成员列表保存为数组。任何帮助将不胜感激,如果我做错了什么,我深表歉意。

最佳答案

这里的问题出在你的数据结构上。这不是 Normalized其中 RDBMS 旨在存储规范化数据。如果数据被规范化,所有创建/更新/删除/检索操作都会变得容易得多。

要规范化您的表格,您需要停止将成员 ID 存储在与 CSV 相同的列中。

Gang表应该

uuid
title
kills

我假设您已经有一个成员表,它看起来像

uuid
member_name

然后您需要一个名为 gang_members 的新表

gang_id
member_id

并在这两列上创建唯一索引。

另见 https://stackoverflow.com/a/41215681/267540 , Is storing a delimited list in a database column really that bad?https://stackoverflow.com/a/41305027/267540

关于java - 尝试通过 MySQL 正确保存/加载数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41412674/

相关文章:

java - 尝试打印 StringBuilder 类型 : "com.jeanlucthumm.poem.Word@7852e922" 时出现奇怪的输出

java - 如何异步验证 Nymi band?

mysql - 如何有效地获取 mysql 表中版本最高的条目

MySQL 表类型使用,innodb?

javascript - 将对象数组分组并添加到复杂对象: Javascript

c - 如何在 C 中创建对象数组?

c++ - 警告 : ISO C++ forbids variable length array

java - 它是什么意思(NetBeans,编译警告)?

java - Hibernate 不改变现有的列是一个缺点吗?

java - 从 context.xml 文件获取数据库凭据