0

我有一个患者表,其中包含:

    CREATE TABLE Patient (
    PID                 smallint            NOT NULL   AUTO-Increment,
    PFname              char(30)            NOT NULL,
    PLname              char(30)            NOT NULL,
    Othername           char(30)            NULL,
    DOB                 Date                NOT NULL,
    MainPhone           char(30)            NULL,
    OtherPhone          char(30)            NULL,
    email               varchar(255)        NULL,
    Referral            varchar(255)        NULL,
    notes               varchar(255)        NULL,
        PRIMARY KEY (PID),
        UNIQUE KEY  (),
        INDEX (PFname)
        ) ENGINE = InnoDB;

我选择什么作为唯一键?

4

1 回答 1

0

在你自己的问题中有答案。对于唯一键,您选择应该是唯一的字段或字段组合。如果对象通常不带有保证唯一的字段,则创建一个人工(通常是自动增量)字段(如您的 PID)用作唯一键 - 因为它在定义上是唯一的。

作为旁注,您的医院是否只会有 65,000 名患者?在我看来,对于 PID,Smallint 是一个糟糕的选择。

于 2013-12-12T11:30:24.270 回答