服务器之家

服务器之家 > 正文

详解在MySQL中创建表的教程

时间:2020-05-08 15:43     来源/作者:MYSQL教程网

创建表的命令要求:

  •     表的名称
  •     表字段名称
  •     每个字段的定义

语法:

下面是通用的SQL语法来创建一个MySQL表:

?
1
CREATE TABLE table_name (column_name column_type);

现在,我们将创建下面的教程数据库表中。

?
1
2
3
4
5
6
7
tutorials_tbl(
  tutorial_id INT NOT NULL AUTO_INCREMENT,
  tutorial_title VARCHAR(100) NOT NULL,
  tutorial_author VARCHAR(40) NOT NULL,
  submission_date DATE,
  PRIMARY KEY ( tutorial_id )
);

这里几个项目需要说明:

  •     使用字段属性NOT NULL,因为我们不希望此字段是NULL。因此如果用户试图创建一个与NULL值的记录,那么MySQL将产生一个错误。
  •     字段属性AUTO_INCREMENT告诉MySQL的继续递增,下一个可用编号的id字段。
  •     关键字PRIMARY KEY用于定义一个列作为主键。可以使用以逗号分隔的多个列定义一个主键。

从命令提示符创建表:

这是很容易的,从mysql>提示符下创建一个MySQL表。您将使用SQL命令 CREATE TABLE 创建一个表。
例子:

下面是一个例子,它创建 tutorials_tbl:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
root@host# mysql -u root -p
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> CREATE TABLE tutorials_tbl(
  -> tutorial_id INT NOT NULL AUTO_INCREMENT,
  -> tutorial_title VARCHAR(100) NOT NULL,
  -> tutorial_author VARCHAR(40) NOT NULL,
  -> submission_date DATE,
  -> PRIMARY KEY ( tutorial_id )
  -> );
Query OK, 0 rows affected (0.16 sec)
mysql>

注: MySQL终止命令,直到你给一个分号(;)结束时的SQL命令。
使用PHP脚本创建MySQL表:

要创建新的表中的任何现有的数据库,需要使用PHP函数mysql_query()。将通过它的第二个参数,正确的SQL命令来创建一个表。
例子:

下面是一个例子,使用PHP脚本来创建一个表:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<html>
<head>
<title>Creating MySQL Tables - by www.jb51.com</title>
</head>
<body>
<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
 die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully<br />';
$sql = "CREATE TABLE tutorials_tbl( ".
    "tutorial_id INT NOT NULL AUTO_INCREMENT, ".
    "tutorial_title VARCHAR(100) NOT NULL, ".
    "tutorial_author VARCHAR(40) NOT NULL, ".
    "submission_date DATE, ".
    "PRIMARY KEY ( tutorial_id )); ";
mysql_select_db( 'TUTORIALS' );
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
 die('Could not create table: ' . mysql_error());
}
echo "Table created successfully\n";
mysql_close($conn);
?>
</body>
</html>
标签:

相关文章

热门资讯

沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享
歪歪漫画vip账号共享2020_yy漫画免费账号密码共享 2020-04-07
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部