Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.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
C# 如何复制表项及其依赖项表行_C#_Mysql_Sql - Fatal编程技术网

C# 如何复制表项及其依赖项表行

C# 如何复制表项及其依赖项表行,c#,mysql,sql,C#,Mysql,Sql,我需要使用MySQL复制表中的数据,但是这些数据与其他表有一对多的关系 表A[1]-----------[N]表B[1]-----------[N]表C 因此,我需要做的是从表1复制一个条目,并将其与其他表中的相关数据一起复制到表1中 如果这是一对一的关系,我可以这样做,但在这种情况下我真的不知道怎么做。这个呢 INSERT INTO TABLE A1 (COL1, COL2, COL3) SELECT * FROM TABLE A [WHERE CONDITION] INSERT INTO

我需要使用MySQL复制表中的数据,但是这些数据与其他表有一对多的关系

表A[1]-----------[N]表B[1]-----------[N]表C

因此,我需要做的是从表1复制一个条目,并将其与其他表中的相关数据一起复制到表1中

如果这是一对一的关系,我可以这样做,但在这种情况下我真的不知道怎么做。

这个呢

INSERT INTO TABLE A1 (COL1, COL2, COL3)
SELECT * FROM TABLE A
[WHERE CONDITION]

INSERT INTO TABLE B1 (COL1, COL2, COL3)
SELECT B.COL1, B.COL2, B.COL3
    FROM TABLEB AS B
    INNER JOIN TABLEA
    ON [RELATIONSHIP]
    [WHERE CONDITION] --SAME AS THE FIRST

   INSERT INTO TABLE C1 (COL1,  COL2, cOL3)
   SELECT C.COL1,  C.COL2, C.COL3
       FROM TABLEC AS C
       INNER JOIN TABLEB
       ON [RELATIONSHIP C=B]
       INNER JOIN TABLEA
       ON [RELATIONSHIP B=A]
       [WHERE CONDITION] --SAME AS THE FIRST

编辑:您可以根据以下内容指定自动增量的值:

hi Kafuka,谢谢您的回复。当我复制表A和表B中的数据时,这非常有效,但是如何使它复制表C中的数据呢?为了复制表C中与表B相关的数据,第三条insert语句必须是什么样的?我创建了一个包含3个表的小型数据库,以简化此测试,并得到以下错误:“无法添加或更新子行外键约束失败mysql”用于表a和表C。如果我有办法获得每个插入的tableB行的最后一个_insert_id(),并将其用于tableC insert语句,它将解决我的问题。所以我想…:-/是否使用自动递增的表?是的,在本例中,我在tableB和tableC中使用自动递增的主键。编辑以说明自动递增