Php 用SQL生成表

Php 用SQL生成表,php,sql,Php,Sql,我在PHP中有类似的代码: $con=mysqli_connect("localhost","","",""); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } // Create table $sql="CREATE TABLE Workers ( PID INT NOT NULL AUTO_INCREME

我在PHP中有类似的代码:

$con=mysqli_connect("localhost","","","");
// Check connection
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

// Create table
$sql="CREATE TABLE Workers
(
PID INT NOT NULL AUTO_INCREMENT, 
PRIMARY KEY(PID),
Name VARCHAR(30),
)";

// Execute query
if (mysqli_query($con,$sql)) {
    echo "Table persons created successfully";
} else {
    echo "Error creating table: " . mysqli_error($con);
}
我需要添加以下列:姓名、出生日期、身份证代码、活动/非活动、联系信息(电子邮件、电话、地址)、自我介绍(三种语言)、工作经历(三种语言)、教育程度(三种语言)、创建时间和创建人、修改时间和修改人


如何在一列中添加三个不同的内容?

我假设当你说你不知道如何在一列中添加三个不同的内容时,你所指的列是自我介绍,其他列是三种语言。您不应该有一列包含三种语言的相同信息。如果这三种语言都是必需的,我会创建三个专栏,SelfIntroductionEnglish,selfintroduction俄语,等等。。。如果任何记录只需要一种语言,我会重新编译一个单独的自我介绍talbe。它将有一个主表的外键,一个存储列语言的标志列,以及一个用指定语言保存自我介绍的第三列。然后,您可以轻松地检查工作人员是否有英文介绍,如果有,请抓住它。

首先,CREATE TABLE查询中的最后一列不应在后面加逗号。只有在分隔列名时才能这样做

另外,在一列中添加内容也不现实。思考sql的一个好方法就像是电子表格的一个真正高级版本。在任何给定的单元格中,您不应该有超过一条信息。您需要三个栏目,或者以某种方式将信息从一个栏目翻译成另一种语言。

是这样吗

    // Create table
$sql = "CREATE TABLE workers
(
    PID INT NOT NULL AUTO_INCREMENT, 
    PRIMARY KEY(PID),
    name VARCHAR(30) NOT NULL,
        birth_date DATE NOT NULL,
    id_code INT NOT NULL,
    activity INT NULL
)";

$sql2 = "CREATE TABLE contacts (
    FOREIGN KEY(PID),
    PRIMARY KEY(PID),
        email VARCHAR(30) NULL,
    phone INT NULL,
    address VARCHAR(30) NOT NULL
)";

$sql3 = "CREATE TABLE personality (
    FOREIGN KEY(lang),
    PRIMARY KEY(PID,lang),
    lang VARCHAR(3) NOT NULL,
        selfintroduction VARCHAR(255) NOT NULL,
    workexperience VARCHAR(255) NOT NULL,
    education VARCHAR(255) NOT NULL
)"; 

我不知道如何添加和修改内容。

我想我现在有点明白了。找到此链接:。这有点帮助。不,不是这样,因为只创建了$sql。但是mysqli_查询只允许3个输入)。