Java mysql数据库中的多重插入
我有一个表Java mysql数据库中的多重插入,java,mysql,jdbc,insert,procedure,Java,Mysql,Jdbc,Insert,Procedure,我有一个表Categories,它有Skins和Images Categories : id, Name Skin : id, name CategorySkins : CategoryID, SkinID Images : id, name SkinImages: Skinid, ImageID 我的问题是用几个皮肤保存单个类别实例,用几个图像保存那些皮肤。 我尝试过动态构建插入字符串,但我不喜欢这种方法。 另外,是否可以通过以下方式传递数据: 具有皮肤列表和图像列表的Catogory
Categories
,它有Skins
和Images
Categories : id, Name
Skin : id, name
CategorySkins : CategoryID, SkinID
Images : id, name
SkinImages: Skinid, ImageID
我的问题是用几个皮肤
保存单个类别
实例,用几个图像
保存那些皮肤
。
我尝试过动态构建插入字符串,但我不喜欢这种方法。
另外,是否可以通过以下方式传递数据:
具有皮肤列表和图像列表的Catogory。作为mysql程序的列表?
还是可以将数组作为参数传递给过程?
关于解决这个问题的其他方法有什么建议吗?我在这个问题上使用了这个声明
stmnt = conn.createStatement();
conn.setAutoCommit(false);
stmnt.addBatch("insert statement for categories");
stmnt.addBatch("insert statement for skins");
stmnt.addBatch("insert statement for CategorySkins");
...
stmnt.executeBatch();
conn.commit();
我在这个问题上使用了声明
stmnt = conn.createStatement();
conn.setAutoCommit(false);
stmnt.addBatch("insert statement for categories");
stmnt.addBatch("insert statement for skins");
stmnt.addBatch("insert statement for CategorySkins");
...
stmnt.executeBatch();
conn.commit();
我想将这些数据一起插入,但我不知道如何将其传递给mysql过程。当您还没有定义将这些数据插入数据库的基本方法时,为什么不考虑使用存储过程?您确实需要考虑如何将该数据结构映射到数据库,以及在您担心是否需要存储过程之前,需要执行哪些单独的查询来执行整个数据插入。@MikeBrant我已经编辑了这个问题。谢谢你的回复。我想将这些数据一起插入,但我不知道如何将其传递给mysql过程。当你还没有定义将这些数据插入数据库的基本方法时,为什么不考虑使用存储过程?您确实需要考虑如何将该数据结构映射到数据库,以及在您担心是否需要存储过程之前,需要执行哪些单独的查询来执行整个数据插入。@MikeBrant我已经编辑了这个问题。谢谢你的回复。