簡體   English   中英

外鍵約束格式不正確-Java-mysql

[英]Foreign key constraint is incorrectly formed - java-mysql

什么是mysql問題? 我不知道錯誤是什么,因為我之前沒有使用過外鍵

String clientes = "CREATE TABLE clientes("+
                    "ID INTEGER NOT NULL AUTO_INCREMENT,"+
                    "CUENTA INTEGER,"+
                    "NOMBRE VARCHAR(255),"+
                    "EDAD INTEGER,"+
                    "ADICIONAL INTEGER,"+
                    "DOMICILIO VARCHAR(255),"+
                    "PRIMARY KEY(ID))";

        String cuenta = "CREATE TABLE cuenta("+
                "CUENTA INTEGER,"+
                "SALDOAFAVOR DOUBLE(14,2),"+
                "SALDOENCONTRA DOUBLE(14,2),"+
                "FECHACORTE DATE,"+
                "LIMITECREDITO DOUBLE(14,2),"+
                "FOREIGN KEY(CUENTA) REFERENCES clientes(CUENTA))";

正確的引用和定義將使用主鍵:

CREATE TABLE cuenta (
    CUENTA INTEGER AUTO_INCREMENT PRIMARY KEY,
    CLIENTE_ID INT,
    SALDOAFAVOR NUMERIC(14, 2),
    SALDOENCONTRA NUMERIC(14, 2),
    FECHACORTE DATE,
    LIMITECREDITO NUMERIC(14,2),
    FOREIGN KEY(CLIENT_ID) REFERENCES clientes(ID)
);

筆記:

  • CUENTA似乎應該是該表的主鍵。
  • 外鍵引用應在CLIENTES上使用id。
  • 您不需要CUENTA上的CLIENTES
  • DOUBLE(14, 2)不是正確的數據類型。 您需要DECIMAL(14, 2) / NUMERIC(14, 2)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM