1

私のJavaはこのコードを実行できず、「キー制約を追加できません」などのエラーが表示されます助けてください

st.executeUpdate("CREATE TABLE `e166713`.`shopping` (   "
                      `idShopping` INT NOT NULL,                    
                      `idUser` VARCHAR(45) NULL,                    
                      PRIMARY KEY (`idShopping`),                   
                      INDEX `user_idx` (`idUser` ASC),              
                      CONSTRAINT `user`                             
                      FOREIGN KEY (`idUser`)                        
                      REFERENCES `e166713`.`user` (`uID`)       
                      ON DELETE NO ACTION                           
                      ON UPDATE NO ACTION)");
4

1 に答える 1

1

これは、次の 2 つのことを意味します。

  • どちらuserのテーブルもまだ作成されていません

また

  • uIDin table は: userと同じデータ型ではありません。idUservarchar(45)

    列は、両方のテーブルでまったく同じデータ型である必要があります。

sqlfiddle demo

于 2013-11-07T17:05:49.920 に答える