Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java mysql数据库中的多重插入_Java_Mysql_Jdbc_Insert_Procedure - Fatal编程技术网

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我已经编辑了这个问题。谢谢你的回复。