如何将列表添加到SQL数据库(使用java)

时间:2011-07-09 23:13:14

标签: java mysql sql

我是sql的新手,我想知道如何将列表添加到数据库中。这就是我的意思:

我有一个像这样的java类,我想将其信息插入到db:

public class Dog{

  private int dog_id;
  private String dog_name;
  private ArrayList<String> dog_friends;

}

每个狗对象都会有不同数量的朋友。我的问题是如何将此列表添加到数据库中。我计划有3列(id,name,list),我只是不知道如何添加列表。

2 个答案:

答案 0 :(得分:6)

在关系数据库世界中,您所拥有的称为一对多关系,它需要两个数据库表来表示信息。

在第一张表格中,您将idname;在第二个表格中,您将dog_idfriend_iddog_friend

第二个表中可能有许多条目用于第一个表中的每个条目。在第二个表格中插入一行时,请务必将dog_id设置为与第一个表格中的id相匹配。

使用此结构,您可以在SQL查询中使用JOIN一次获取所有信息,或根据您的需要独立查询表。

答案 1 :(得分:3)

您的表格结构应如下所示(ish):

dogs
id: int(11)
name: varchar(255)

dog_friends
dog_id: int(11) 
dog_friend_id: int(11)

假设dog_friends是其他狗,你在第二张桌子里不需要dog_friend和friend_id。 dog_id和dog_friend_id都将引用dog表中的ID字段。

但是,@ Mark Elliot的正确之处在于您将使用JOIN来访问数据。

此外,在冒险进入SQL之前,您应该阅读关系数据库。学习为什么比学习如何更好。希望这有帮助!