MySQL 教程(超具体,零基础可学、第一篇)

打印 上一主题 下一主题

主题 753|帖子 753|积分 2259

目次

一、MySQL数据库概述
二、MySQL 毗连
1、利用 MySQL 二进制方式毗连
2、利用 PHP 脚本毗连 MySQL
三、MySQL 创建数据库
1、利用 mysqladmin 创建数据库
2、利用 PHP脚本 创建数据库
四、MySQL 删除数据库
1、利用 mysqladmin 删除数据库
2、利用 PHP 脚本删除数据库
五、MySQL 选择数据库
1、从下令提示窗口中选择 MySQL 数据库
2、利用 PHP 脚本选择 MySQL 数据库
六、MySQL 数据类型
1、数值类型
2、日期和时间类型
3、字符串类型
4、枚举与集合类型(Enumeration and Set Types)
5、空间数据类型(Spatial Data Types)
七、MySQL 创建数据表
1、通过下令提示符创建表
2、利用 PHP 脚本创建数据表


一、MySQL数据库概述

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开辟,目前属于 Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据生存在差别的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并进步了机动性。


  • MySQL 是开源的,目前从属于 Oracle 旗下产物。
  • MySQL 支持大型的数据库。可以处理拥有上千万条记载的大型数据库。
  • MySQL 利用标准的 SQL 数据语言情势。
  • MySQL 可以运行于多个系统上,并且支持多种语言。这些编程语言包罗 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等。
  • MySQL 对 PHP 有很好的支持,PHP 是很适合用于 Web 程序开辟。
  • MySQL 支持大型数据库,支持 5000 万条记载的数据仓库,32 位系统表文件最大可支持 4GB,64 位系统支持最大的表文件为8TB。
  • MySQL 是可以定制的,采用了 GPL 协议,你可以修改源码来开辟本身的 MySQL 系统。
二、MySQL 毗连


1、利用 MySQL 二进制方式毗连

您可以利用 MySQL 二进制方式进入到 mysql 下令提示符下来毗连 MySQL 数据库,格式如下:
  1. mysql -u root -p
复制代码
参数阐明:


  • -u 参数用于指定用户名。
  • -p 参数表示必要输入密码。
  • root表示数据库默认下载安装的用户名(如果未修改的话)
实例:
以下是从下令行中毗连 mysql 服务器的简单实例:
  1. [root@host]# mysql -u root -p
  2. Enter password:******
复制代码
按照提示输入密码(默认密码root),并按下 Enter 键。
在登录乐成后会出现 mysql> 下令提示窗口,你可以在上面执行任何 SQL 语句。
以上下令执行后,登录乐成输出结果如下:
  1. Welcome to the MySQL monitor.  Commands end with ; or \g.
  2. Your MySQL connection id is 2854760 to server version: 5.0.9
  3. Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
复制代码
在以上实例中,我们利用了 root 用户登录到 MySQL 服务器,当然你也可以利用其他 MySQL 用户登录。
如果用户权限富足,任何用户都可以在 MySQL 的下令提示窗口中举行 SQL 操作。
乐成毗连到 MySQL 后,你可以在下令行中直接执行 SQL 查询。
列出所有可用的数据库:
  1. SHOW DATABASES;
复制代码
选择要利用的数据库:
  1. USE your_database;
复制代码
列出所选数据库中的所有表:
  1. SHOW TABLES;
复制代码
退出 mysql> 下令提示窗口可以利用 exit 下令,如下所示:
  1. mysql> EXIT;
  2. Bye
复制代码
或者利用:
  1. mysql> QUIT;
复制代码
或者按下 Ctrl + D(在 Unix/Linux 系统中)。

2、利用 PHP 脚本毗连 MySQL

PHP 提供了 mysqli_connect() 函数来毗连数据库。
该函数有 6 个参数,在乐成链接到 MySQL 后返回毗连标识,失败返回 FALSE 。
语法
  1. mysqli_connect(host, username, password, dbname,port, socket);
复制代码
参数阐明:
参数形貌host可选。规定主机名或 IP 地址。username可选。规定 MySQL 用户名。password可选。规定 MySQL 密码。dbname可选。规定默认利用的数据库。port可选。规定尝试毗连到 MySQL 服务器的端口号。socket可选。规定 socket 或要利用的已定名 pipe。 你可以利用 PHP 的 mysqli_close() 函数来断开与 MySQL 数据库的链接。
该函数只有一个参数为 mysqli_connect() 函数创建毗连乐成后返回的 MySQL 毗连标识符。
语法
  1. bool mysqli_close ( mysqli $link )
复制代码
本函数关闭指定的毗连标识所关联的到 MySQL 服务器的非持久毗连。如果没有指定 link_identifier,则关闭上一个打开的毗连。
提示:通常不必要利用 mysqli_close(),由于已打开的非持久毗连会在脚本执行完毕后自动关闭。
实例
你可以尝试以下实例来毗连到你的 MySQL 服务器:
毗连 MySQL
  1. <?php
  2. $dbhost = 'localhost';  // mysql服务器主机地址
  3. $dbuser = 'root';            // mysql用户名
  4. $dbpass = 'root';          // mysql用户名密码
  5. $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
  6. if(! $conn )
  7. {
  8.     die('Could not connect: ' . mysqli_error());
  9. }
  10. echo '数据库连接成功!';
  11. mysqli_close($conn);
  12. ?>
复制代码
三、MySQL 创建数据库


我们可以在登岸 MySQL 服务后,利用 create 下令创建数据库,语法如下:
  1. CREATE DATABASE 数据库名;
复制代码
以下下令简单的演示了创建数据库的过程,数据名为 user:
  1. [root@host]# mysql -u root -p   
  2. Enter password:******  # 登录后进入终端
  3. mysql> create DATABASE user;
复制代码
建数据库的基本语法如下:
  1. CREATE DATABASE [IF NOT EXISTS] database_name
  2.   [CHARACTER SET charset_name]
  3.   [COLLATE collation_name];
复制代码
如果你希望在创建数据库时指定一些选项,可以利用 CREATE DATABASE 语句的其他参数,例如,你可以指定字符集和排序规则:
实例
  1. CREATE DATABASE mydatabase
  2.   CHARACTER SET utf8mb4
  3.   COLLATE utf8mb4_general_ci;
复制代码
如果数据库已经存在,执行 CREATE DATABASE 将导致错误。
为了避免这种情况,你可以在 CREATE DATABASE 语句中添加 IF NOT EXISTS 子句:
实例
  1. CREATE DATABASE IF NOT EXISTS mydatabase;
复制代码

1、利用 mysqladmin 创建数据库

mysqladmin 是 MySQL 提供的一个用于执行管理使命的下令行工具。
通过 mysqladmin,你可以执行各种数据库管理操作,包罗创建数据库。
以下是利用 mysqladmin 创建数据库的基本语法:
  1. mysqladmin -u your_username -p create your_database
复制代码


  • -u 参数用于指定 MySQL 用户名。
  • -p 参数表示必要输入密码。
  • create 是执行的操作,表示创建数据库。
  • your_database 是要创建的数据库的名称。
利用普通用户,你可能必要特定的权限来创建或者删除 MySQL 数据库。
我们这边利用 root 用户登录,root 用户拥有最高权限,可以利用 mysql mysqladmin 下令来创建数据库。
执行上述下令后,系统会提示你输入密码,输入密码后按 Enter 键即可。
以下下令简单的演示了创建数据库的过程,数据名为 user:
  1. [root@host]# mysqladmin -u root -p create user
  2. Enter password:******
复制代码
以上下令执行乐成后会创建 MySQL 数据库 user。
如果你希望在创建数据库时指定字符集和排序规则,可以利用 -default-character-set 和 -default-collation 参数:
  1. mysqladmin -u your_username -p create your_database \
  2.   --default-character-set=utf8mb4 \
  3.   --default-collation=utf8mb4_general_ci
复制代码
以上代码创建一个利用 utf8mb4 字符集和 utf8mb4_general_ci 排序规则的数据库。
请留意,在执行这些下令时,请确保 MySQL 服务器正在运行,并且你有富足的权限执行这些操作。
如果你希望利用 mysqladmin 毗连到 MySQL 服务器执行其他管理使命,例如检察服务器状态、重启服务器等,可以利用以下情势的下令:
  1. mysqladmin -u your_username -p your_command
复制代码
在这里,your_command 是你希望执行的具体管理下令。
例如,要检察 MySQL 服务器的状态,可以利用:
  1. mysqladmin -u your_username -p status
复制代码
这将要求你输入密码,并表现有关服务器状态的信息。

2、利用 PHP脚本 创建数据库

PHP 利用 mysqli_query 函数来创建或者删除 MySQL 数据库。
该函数有两个参数,在执行乐成时返回 TRUE,否则返回 FALSE。
语法
  1. mysqli_query(connection,query,resultmode);
复制代码
参数形貌connection必需。规定要利用的 MySQL 毗连。query必需,规定查询字符串。resultmode 可选。一个常量。可以是下列值中的恣意一个:
     

  • MYSQLI_USE_RESULT(如果必要检索大量数据,请利用这个)
  • MYSQLI_STORE_RESULT(默认)
实例
以下实例演示了利用 PHP 来创建一个数据库:
创建数据库
  1. <?php
  2. $dbhost = 'localhost';  // mysql服务器主机地址
  3. $dbuser = 'root';            // mysql用户名
  4. $dbpass = 'root';          // mysql用户名密码
  5. $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
  6. if(! $conn )
  7. {
  8.   die('连接错误: ' . mysqli_error($conn));
  9. }
  10. echo '连接成功<br />';
  11. $sql = 'CREATE DATABASE RUNOOB';
  12. $retval = mysqli_query($conn,$sql );
  13. if(! $retval )
  14. {
  15.     die('创建数据库失败: ' . mysqli_error($conn));
  16. }
  17. echo "数据库 RUNOOB 创建成功\n";
  18. mysqli_close($conn);
  19. ?>
复制代码
四、MySQL 删除数据库


利用普通用户登岸 MySQL 服务器,你可能必要特定的权限来创建或者删除 MySQL 数据库,所以我们这边利用 root 用户登录,root 用户拥有最高权限。
在删除数据库过程中,务必要十分审慎,由于在执行删除下令后,所有数据将会消散。
drop 下令删除数据库
drop 下令格式:
  1. DROP DATABASE <database_name>;        -- 直接删除数据库,不检查是否存在
  2. DROP DATABASE [IF EXISTS] <database_name>;
复制代码
参数阐明:


  • IF EXISTS 是一个可选的子句,表示如果数据库存在才执行删除操作,避免由于数据库不存在而引发错误。
  • database_name 是你要删除的数据库的名称。
例如删除名为 RUNOOB 的数据库:
  1. -- 直接删除数据库,不检查是否存在
复制代码
  1. mysql> DROP DATABASE RUNOOB;
复制代码
  1. -- 删除数据库,如果存在的话
复制代码
  1. DROP DATABASE IF EXISTS RUNOOB;
复制代码
留意: 在执行删除数据库操作前,请确保你确实想要删除数据库及其所有数据,由于该操作是不可逆的。为了避免误操作,通常建议在执行删除之前备份数据库。
1、利用 mysqladmin 删除数据库

你也可以利用 MySQL mysqladmin 下令在终端来执行删除下令。
以下是利用 mysqladmin 删除数据库的下令:
  1. mysqladmin -u your_username -p drop your_database
复制代码
your_username 是 MySQL 用户名,your_database 是要删除的数据库的名称。
执行此下令后,系统会提示输入密码,输入密码后按 Enter 键即可删除数据库。
以下实例删除数据库 RUNOOB(该数据库在前一章节已创建):

  1. [root@host]# mysqladmin -u root -p drop user
  2. Enter password:******
复制代码
执行以上删除数据库下令后,会出现一个提示框,来确认是否真的删除数据库:
  1. Dropping the database is potentially a very bad thing to do.
  2. Any data stored in the database will be destroyed.
  3. Do you really want to drop the 'user' database [y/N] y
  4. Database "user" dropped
复制代码

2、利用 PHP 脚本删除数据库

PHP利用 mysqli_query 函数来创建或者删除 MySQL 数据库。
该函数有两个参数,在执行乐成时返回 TRUE,否则返回 FALSE。
语法
  1. mysqli_query(connection,query,resultmode);
复制代码
参数形貌connection必需。规定要利用的 MySQL 毗连。query必需,规定查询字符串。resultmode 可选。一个常量。可以是下列值中的恣意一个:
     

  • MYSQLI_USE_RESULT(如果必要检索大量数据,请利用这个)
  • MYSQLI_STORE_RESULT(默认)
实例
以下实例演示了利用PHP mysqli_query函数来删除数据库:
删除数据库
  1. <?php
  2. $dbhost = 'localhost';  // mysql服务器主机地址
  3. $dbuser = 'root';            // mysql用户名
  4. $dbpass = 'root';          // mysql用户名密码
  5. $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
  6. if(! $conn )
  7. {
  8.     die('连接失败: ' . mysqli_error($conn));
  9. }
  10. echo '连接成功<br />';
  11. $sql = 'DROP DATABASE RUNOOB';
  12. $retval = mysqli_query( $conn, $sql );
  13. if(! $retval )
  14. {
  15.     die('删除数据库失败: ' . mysqli_error($conn));
  16. }
  17. echo "数据库 RUNOOB 删除成功\n";
  18. mysqli_close($conn);
  19. ?>
复制代码
五、MySQL 选择数据库

在你毗连到 MySQL 数据库后,可能有多个可以操作的数据库,所以你必要选择你要操作的数据库。

1、从下令提示窗口中选择 MySQL 数据库

在 mysql> 提示窗口中可以很简单的选择特定的数据库。
在 MySQL 中,要选择要利用的数据库,可以利用 USE 语句,以下是基本的语法:
  1. USE database_name;
复制代码
参数阐明:


  • database_name 是你要选择的数据库的名称。
选择来数据库后,你的后续 SQL 查询和操作在指定的数据库 database_name 上执行。
实例
以下实例选取了数据库 RUNOOB:
  1. [root@host]# mysql -u root -p
  2. Enter password:******mysql> use RUNOOB;Database changedmysql>
复制代码
执行以上下令后,你就已经乐成选择了 RUNOOB 数据库,在后续的操作中都会在 RUNOOB 数据库中执行。
在下令行中,你可以通过以下方式选择数据库:
  1. mysql -u your_username -p -D your_database
复制代码


  • -D 参数用于指定要选择的数据库。
例如:
  1. mysql -u root -p -D RUNOOB
复制代码
在输入密码后,你将进入 MySQL 提示符,并且任何后续的查询和操作都将在 RUNOOB 数据库上执行。
   请确保选择的数据库存在,否则你将收到错误消息。你可以利用 SHOW DATABASES; 查询可用的数据库,确保你要选择的数据库在列表中。
  
2、利用 PHP 脚本选择 MySQL 数据库

PHP 提供了函数 mysqli_select_db 来选取一个数据库。函数在执行乐成后返回 TRUE ,否则返回 FALSE 。
语法
  1. mysqli_select_db(connection,dbname);
复制代码
参数形貌connection必需。规定要利用的 MySQL 毗连。dbname必需,规定要利用的默认数据库。 实例
以下实例展示了如何利用 mysqli_select_db 函数来选取一个数据库:
选择数据库
  1. <?php
  2. $dbhost = 'localhost';  // mysql服务器主机地址
  3. $dbuser = 'root';            // mysql用户名
  4. $dbpass = '123456';          // mysql用户名密码
  5. $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
  6. if(! $conn )
  7. {
  8.     die('连接失败: ' . mysqli_error($conn));
  9. }
  10. echo '连接成功';
  11. mysqli_select_db($conn, 'RUNOOB' );
  12. mysqli_close($conn);
  13. ?>
复制代码
六、MySQL 数据类型

MySQL 中定义数据字段的类型对你数据库的优化是非常重要的。
MySQL 支持多种类型,大抵可以分为三类:数值、日期/时间和字符串(字符)类型。

1、数值类型

MySQL 支持所有标准 SQL 数值数据类型。
这些类型包罗严格数值数据类型(INTEGER、SMALLINT、DECIMAL 和 NUMERIC),以及近似数值数据类型(FLOAT、REAL 和 DOUBLE PRECISION)。
关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。
BIT数据类型生存位字段值,并且支持 MyISAM、MEMORY、InnoDB 和 BDB表。
作为 SQL 标准的扩展,MySQL 也支持整数类型 TINYINT、MEDIUMINT 和 BIGINT。下面的表表现了必要的每个整数类型的存储和范围。
类型巨细范围(有符号)范围(无符号)用途TINYINT1 Bytes(-128,127)(0,255)小整数值SMALLINT2 Bytes(-32 768,32 767)(0,65 535)大整数值MEDIUMINT3 Bytes(-8 388 608,8 388 607)(0,16 777 215)大整数值INT或INTEGER4 Bytes(-2 147 483 648,2 147 483 647)(0,4 294 967 295)大整数值BIGINT8 Bytes(-9,223,372,036,854,775,808,9 223 372 036 854 775 807)(0,18 446 744 073 709 551 615)极大整数值FLOAT4 Bytes(-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38)0,(1.175 494 351 E-38,3.402 823 466 E+38)单精度
浮点数值DOUBLE8 Bytes(-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)双精度
浮点数值DECIMAL对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2依靠于M和D的值依靠于M和D的值小数值
2、日期和时间类型

表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。
每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时利用"零"值。
TIMESTAMP类型有专有的自动更新特性,将在后面形貌。
类型巨细
( bytes)范围格式用途DATE31000-01-01/9999-12-31YYYY-MM-DD日期值TIME3'-838:59:59'/'838:59:59'HH:MM:SS时间值或一连时间YEAR11901/2155YYYY年份值DATETIME8'1000-01-01 00:00:00' 到 '9999-12-31 23:59:59'YYYY-MM-DD hh:mm:ss混合日期和时间值TIMESTAMP4 '1970-01-01 00:00:01' UTC 到 '2038-01-19 03:14:07' UTC
结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07
YYYY-MM-DD hh:mm:ss混合日期和时间值,时间戳
3、字符串类型

字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。该节形貌了这些类型如何工作以及如何在查询中利用这些类型。
类型巨细用途CHAR0-255 bytes定长字符串VARCHAR0-65535 bytes变长字符串TINYBLOB0-255 bytes不凌驾 255 个字符的二进制字符串TINYTEXT0-255 bytes短文本字符串BLOB0-65 535 bytes二进制情势的长文本数据TEXT0-65 535 bytes长文本数据MEDIUMBLOB0-16 777 215 bytes二进制情势的中等长度文本数据MEDIUMTEXT0-16 777 215 bytes中等长度文本数据LONGBLOB0-4 294 967 295 bytes二进制情势的极大文本数据LONGTEXT0-4 294 967 295 bytes极大文本数据 留意:char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。
CHAR 和 VARCHAR 类型雷同,但它们生存和检索的方式差别。它们的最大长度和是否尾部空格被保留等方面也差别。在存储或检索过程中不举行巨细写转换。
BINARY 和 VARBINARY 雷同于 CHAR 和 VARCHAR,差别的是它们包罗二进制字符串而不要非二进制字符串。也就是说,它们包罗字节字符串而不是字符字符串。这阐明它们没有字符集,并且排序和比力基于列值字节的数值值。
BLOB 是一个二进制大对象,可以容纳可变数目的数据。有 4 种 BLOB 类型:TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。它们区别在于可容纳存储范围差别。
有 4 种 TEXT 类型:TINYTEXT、TEXT、MEDIUMTEXT 和 LONGTEXT。对应的这 4 种 BLOB 类型,可存储的最大长度差别,可根据实际情况选择。

4、枚举与集合类型(Enumeration and Set Types)



  • ENUM: 枚举类型,用于存储单一值,可以选择一个预定义的集合。
  • SET: 集合类型,用于存储多个值,可以选择多个预定义的集合。

5、空间数据类型(Spatial Data Types)

GEOMETRY, POINT, LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, MULTIPOLYGON, GEOMETRYCOLLECTION: 用于存储空间数据(地理信息、几何图形等)。
七、MySQL 创建数据表

创建 MySQL 数据表必要以下信息:


  • 表名
  • 表字段名
  • 定义每个表字段的数据类型
语法
以下为创建 MySQL 数据表的 SQL 通用语法:
  1. CREATE TABLE table_name (
  2.     column1 datatype,
  3.     column2 datatype,
  4.     ...
  5. );
复制代码
参数阐明:


  • table_name 是你要创建的表的名称。
  • column1, column2, ... 是表中的列名。
  • datatype 是每个列的数据类型。
以下是一个具体的实例,创建一个用户表 users
实例
  1. CREATE TABLE users (
  2.     id INT AUTO_INCREMENT PRIMARY KEY,
  3.     username VARCHAR(50) NOT NULL,
  4.     email VARCHAR(100) NOT NULL,
  5.     birthdate DATE,
  6.     is_active BOOLEAN DEFAULT TRUE
  7. );
复制代码
实例解析:


  • id: 用户 id,整数类型,自增长,作为主键。
  • username: 用户名,变长字符串,不允许为空。
  • email: 用户邮箱,变长字符串,不允许为空。
  • birthdate: 用户的生日,日期类型。
  • is_active: 用户是否已经激活,布尔类型,默认值为 true。
以上只是一个简单的实例,用到了一些常见的数据类型包罗 INT, VARCHAR, DATE, BOOLEAN,你可以根据实际必要选择差别的数据类型。AUTO_INCREMENT 关键字用于创建一个自增长的列,PRIMARY KEY 用于定义主键。
如果你希望在创建表时指定命据引擎,字符集和排序规则等,可以利用 CHARACTER SET 和 COLLATE 子句:
实例
  1. CREATE TABLE mytable (
  2.     id INT PRIMARY KEY,
  3.     name VARCHAR(50)
  4. ) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
复制代码
以上代码创建一个利用 utf8mb4 字符集和 utf8mb4_general_ci 排序规则的表。
以下例子中我们将在 RUNOOB 数据库中创建数据表 runoob_tbl:
实例
  1. CREATE TABLE IF NOT EXISTS `runoob_tbl`(
  2.    `runoob_id` INT UNSIGNED AUTO_INCREMENT,
  3.    `runoob_title` VARCHAR(100) NOT NULL,
  4.    `runoob_author` VARCHAR(40) NOT NULL,
  5.    `submission_date` DATE,
  6.    PRIMARY KEY ( `runoob_id` )
  7. )ENGINE=InnoDB DEFAULT CHARSET=utf8;
复制代码
实例解析:


  • 如果你不想字段为可以设置字段的属性为 NOT NULL,如上实例中的 runoob_title 与 runoob_author 字段, 在操作数据库时如果输入该字段的数据为空,就会报错。
  • AUTO_INCREMENT 定义列为自增的属性,一般用于主键,数值会自动加 1。
  • PRIMARY KEY 关键字用于定义列为主键。 您可以利用多列来定义主键,列间以逗号 , 分隔。
  • ENGINE 设置存储引擎,CHARSET 设置编码。


1、通过下令提示符创建表

通过 mysql> 下令窗口可以很简单的创建 MySQL 数据表。
你可以利用 SQL 语句 CREATE TABLE 来创建数据表。
实例
以下为创建数据表 runoob_tbl 实例:
实例
  1. root@host# mysql -u root -p
  2. Enter password:*******
  3. mysql> USE RUNOOB;
  4. DATABASE changed
  5. mysql> CREATE TABLE runoob_tbl(
  6.    -> runoob_id INT NOT NULL AUTO_INCREMENT,
  7.    -> runoob_title VARCHAR(100) NOT NULL,
  8.    -> runoob_author VARCHAR(40) NOT NULL,
  9.    -> submission_date DATE,
  10.    -> PRIMARY KEY ( runoob_id )
  11.    -> )ENGINE=InnoDB DEFAULT CHARSET=utf8;
  12. Query OK, 0 ROWS affected (0.16 sec)
  13. mysql>
复制代码
留意:MySQL 下令终止符为分号 ; 。
留意: -> 是换行符标识,不要复制。
2、利用 PHP 脚本创建数据表

你可以利用 PHP 的 mysqli_query() 函数来创建已存在数据库的数据表。
该函数有两个参数,在执行乐成时返回 TRUE,否则返回 FALSE。
语法
  1. mysqli_query(connection,query,resultmode);
复制代码
参数形貌connection必需。规定要利用的 MySQL 毗连。query必需,规定查询字符串。resultmode 可选。一个常量。可以是下列值中的恣意一个:
     

  • MYSQLI_USE_RESULT(如果必要检索大量数据,请利用这个)
  • MYSQLI_STORE_RESULT(默认)
实例
以下实例利用了PHP脚本来创建数据表:
创建数据表
  1. <?php
  2. $dbhost = 'localhost';  // mysql服务器主机地址
  3. $dbuser = 'root';            // mysql用户名
  4. $dbpass = '123456';          // mysql用户名密码
  5. $conn = mysqli_connect($dbhost, $dbuser, $dbpass);
  6. if(! $conn )
  7. {
  8.     die('连接失败: ' . mysqli_error($conn));
  9. }
  10. echo '连接成功<br />';
  11. $sql = "CREATE TABLE runoob_tbl( ".
  12.         "runoob_id INT NOT NULL AUTO_INCREMENT, ".
  13.         "runoob_title VARCHAR(100) NOT NULL, ".
  14.         "runoob_author VARCHAR(40) NOT NULL, ".
  15.         "submission_date DATE, ".
  16.         "PRIMARY KEY ( runoob_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8; ";
  17. mysqli_select_db( $conn, 'RUNOOB' );
  18. $retval = mysqli_query( $conn, $sql );
  19. if(! $retval )
  20. {
  21.     die('数据表创建失败: ' . mysqli_error($conn));
  22. }
  23. echo "数据表创建成功\n";
  24. mysqli_close($conn);
  25. ?>
复制代码


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

天空闲话

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表