小小单身
2018-11-27 13:00
如果我把创建表中的 INT(10) 去掉,是不是就是个空表了?因为会出错。加上这个就能成功创建了。
另外自动增量和主键,是不是前面必须要加个 id ?这个id在成功创建表后是不是 以后每增加一行新数据,id下就会自动增1、2、3、4、5。。。
<?php
$con = new mysqli("localhost","root","root");
if ($con->connect_error) {
echo "连接失败".$con->connect_error;
} else {
echo "连接成功"."<br />";
}
mysqli_select_db($con,"my_db");
$sql = "CREATE TABLE names (
id INT(10) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(15) NOT NULL,
works VARCHAR(15) NOT NULL,
reg_data TIMESTAMP
)";
if ($con->query($sql) === TRUE) {
echo "创建数据表成功";
} else {
echo "创建数据表失败";
}
$con->close();
?>
1. 首先,你定义了primary key,这个就是主键,需要指定主键的数据类型。不指定当然会报错。你指定为INT型,那么id的范围就是INT的范围。
2. 你设置了AUTO_INCREMENT,意味着创建记录的时候,可以不指定主键的值,主键会递增。比如现在id值时100,你再创建一条记录,你不指定id的值,它也会自动变成101. 当然,id名字不是必须的,你也可以指定为别的名字,比如 name_id ,只是大家约定俗成把id作为自增主键。
PHP进阶篇
181835 学习 · 2577 问题
相似问题