MYSQL数据库中 ,现在有 两个表 TABLE1(COLUMN1 PK,COLUMN2 FK,......) 
                           TABLE2(COLUMN2 PK,COLUMN1 FK,......)
现在两张表都为空表,由于外键的约束 如何向这2个表中插入数据?

解决方案 »

  1.   

    启用事务,两表insert完后commit 试试
      

  2.   

    START TRANSACTION;insert table1 
    insert table2  COMMIT;主要2个insert的先后顺序
      

  3.   

    你的错误在于数据库设计
    你现在的问题是典型的”插入异常“。
    如果有可能,应该重新定义数据库,把2个表变成3个表, 
    TABLE1(COLUMN1 PK,COLUMN2 FK,......)
    TABLE2(COLUMN2 PK,COLUMN1 FK,......)
    TABLE3( COLUMN1, COLUMN2)从理论上讲。
    一个数据库的关系集应该是一个所有依赖关系的最小等价集。
    该集合满足闭包。
    闭包中的一个重要规则是要满足传递性。
    DEF: A->B, B->C THEN A->C
    在你的数据库设计中,COLUMN1->COLUMN2 AND COLUMN2->COLUMN1 THEN COLUMN1->COLUMN1如果你是学习计算机的,建议你好好读一下数据库设计的理论。