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

目录

一、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 数据库,格式如下:

mysql -u root -p

参数说明:

  • -u参数用于指定用户名。
  • -p参数表示需要输入密码。
  • root表示数据库默认下载安装的用户名(如果未修改的话)

实例:

以下是从命令行中连接 mysql 服务器的简单实例:

[root@host]# mysql -u root -p
Enter password:******

按照提示输入密码(默认密码root),并按下 Enter 键。

在登录成功后会出现mysql>命令提示窗口,你可以在上面执行任何 SQL 语句。

以上命令执行后,登录成功输出结果如下:

Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 2854760 to server version: 5.0.9

Type 'help;' or 'h' for help. Type 'c' to clear the buffer.

在以上实例中,我们使用了 root 用户登录到 MySQL 服务器,当然你也可以使用其他 MySQL 用户登录。

如果用户权限足够,任何用户都可以在 MySQL 的命令提示窗口中进行 SQL 操作。

成功连接到 MySQL 后,你可以在命令行中直接执行 SQL 查询。

列出所有可用的数据库:

SHOW DATABASES;

选择要使用的数据库:

USE your_database;

列出所选数据库中的所有表:

SHOW TABLES;

退出mysql>命令提示窗口可以使用exit命令,如下所示:

mysql> EXIT;
Bye

或者使用:

mysql> QUIT;

或者按下Ctrl + D(在 Unix/Linux 系统中)。


2、使用 PHP 脚本连接 MySQL

PHP 提供了 mysqli_connect() 函数来连接数据库。

该函数有 6 个参数,在成功链接到 MySQL 后返回连接标识,失败返回 FALSE 。

语法

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 连接标识符。

语法

bool mysqli_close ( mysqli $link )

本函数关闭指定的连接标识所关联的到 MySQL 服务器的非持久连接。如果没有指定 link_identifier,则关闭上一个打开的连接。

**提示:**通常不需要使用 mysqli_close(),因为已打开的非持久连接会在脚本执行完毕后自动关闭。

实例

你可以尝试以下实例来连接到你的 MySQL 服务器:

连接 MySQL

<?php
$dbhost = 'localhost';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = 'root';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('Could not connect: ' . mysqli_error());
}
echo '数据库连接成功!';
mysqli_close($conn);
?>

三、MySQL 创建数据库


我们可以在登陆 MySQL 服务后,使用create命令创建数据库,语法如下:

CREATE DATABASE 数据库名;

以下命令简单的演示了创建数据库的过程,数据名为 user:

[root@host]# mysql -u root -p   
Enter password:******  # 登录后进入终端

mysql> create DATABASE user;

建数据库的基本语法如下:

CREATE DATABASE [IF NOT EXISTS] database_name
  [CHARACTER SET charset_name]
  [COLLATE collation_name];

如果你希望在创建数据库时指定一些选项,可以使用 CREATE DATABASE 语句的其他参数,例如,你可以指定字符集和排序规则:

实例

CREATE?DATABASE?mydatabase
??CHARACTER?SET?utf8mb4
??COLLATE?utf8mb4_general_ci;

如果数据库已经存在,执行 CREATE DATABASE 将导致错误。

为了避免这种情况,你可以在 CREATE DATABASE 语句中添加 IF NOT EXISTS 子句:

实例

CREATE?DATABASE?IF?NOT?EXISTS?mydatabase;

1、使用 mysqladmin 创建数据库

mysqladmin 是 MySQL 提供的一个用于执行管理任务的命令行工具。

通过 mysqladmin,你可以执行各种数据库管理操作,包括创建数据库。

以下是使用 mysqladmin 创建数据库的基本语法:

mysqladmin -u your_username -p create your_database
  • -u参数用于指定 MySQL 用户名。
  • -p参数表示需要输入密码。
  • create是执行的操作,表示创建数据库。
  • your_database是要创建的数据库的名称。

使用普通用户,你可能需要特定的权限来创建或者删除 MySQL 数据库。

我们这边使用 root 用户登录,root 用户拥有最高权限,可以使用 mysqlmysqladmin命令来创建数据库。

执行上述命令后,系统会提示你输入密码,输入密码后按 Enter 键即可。

以下命令简单的演示了创建数据库的过程,数据名为 user:

[root@host]# mysqladmin -u root -p create user
Enter password:******

以上命令执行成功后会创建 MySQL 数据库 user。

如果你希望在创建数据库时指定字符集和排序规则,可以使用-default-character-set和-default-collation参数:

mysqladmin -u your_username -p create your_database 

–default-character-set=utf8mb4
–default-collation=utf8mb4_general_ci

以上代码创建一个使用 utf8mb4 字符集和 utf8mb4_general_ci 排序规则的数据库。

请注意,在执行这些命令时,请确保 MySQL 服务器正在运行,并且你有足够的权限执行这些操作。

如果你希望使用 mysqladmin 连接到 MySQL 服务器执行其他管理任务,例如查看服务器状态、重启服务器等,可以使用以下形式的命令:

mysqladmin -u your_username -p your_command

在这里,your_command 是你希望执行的具体管理命令。

例如,要查看 MySQL 服务器的状态,可以使用:

mysqladmin -u your_username -p status

这将要求你输入密码,并显示有关服务器状态的信息。


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

PHP 使用 mysqli_query 函数来创建或者删除 MySQL 数据库。

该函数有两个参数,在执行成功时返回 TRUE,否则返回 FALSE。

语法

mysqli_query(connection,query,resultmode);

参数

描述

connection

必需。规定要使用的 MySQL 连接。

query

必需,规定查询字符串。

resultmode

可选。一个常量。可以是下列值中的任意一个:

  • MYSQLI_USE_RESULT(如果需要检索大量数据,请使用这个)
  • MYSQLI_STORE_RESULT(默认)

实例

以下实例演示了使用 PHP 来创建一个数据库:

创建数据库

<?php
$dbhost = 'localhost';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = 'root';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('连接错误: ' . mysqli_error($conn));
}
echo '连接成功<br />';
$sql = 'CREATE DATABASE RUNOOB';
$retval = mysqli_query($conn,$sql );
if(! $retval )
{
    die('创建数据库失败: ' . mysqli_error($conn));
}
echo "数据库 RUNOOB 创建成功
";
mysqli_close($conn);
?>

四、MySQL 删除数据库


使用普通用户登陆 MySQL 服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库,所以我们这边使用 root 用户登录,root 用户拥有最高权限。

在删除数据库过程中,务必要十分谨慎,因为在执行删除命令后,所有数据将会消失。

drop 命令删除数据库

drop 命令格式:

DROP DATABASE <database_name>;        -- 直接删除数据库,不检查是否存在
或
DROP DATABASE [IF EXISTS] <database_name>;

参数说明:

  • IF EXISTS是一个可选的子句,表示如果数据库存在才执行删除操作,避免因为数据库不存在而引发错误。
  • database_name是你要删除的数据库的名称。

例如删除名为 RUNOOB 的数据库:

– 直接删除数据库,不检查是否存在

mysql> DROP DATABASE RUNOOB;

– 删除数据库,如果存在的话

DROP DATABASE IF EXISTS RUNOOB;

**注意:**在执行删除数据库操作前,请确保你确实想要删除数据库及其所有数据,因为该操作是不可逆的。为了避免误操作,通常建议在执行删除之前备份数据库。

1、使用 mysqladmin 删除数据库

你也可以使用 MySQLmysqladmin命令在终端来执行删除命令。

以下是使用 mysqladmin 删除数据库的命令:

mysqladmin -u your_username -p drop your_database

your_username是 MySQL 用户名,your_database是要删除的数据库的名称。

执行此命令后,系统会提示输入密码,输入密码后按 Enter 键即可删除数据库。

以下实例删除数据库 RUNOOB(该数据库在前一章节已创建):

[root@host]# mysqladmin -u root -p drop user
Enter password:******

执行以上删除数据库命令后,会出现一个提示框,来确认是否真的删除数据库:

Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.

Do you really want to drop the 'user' database [y/N] y
Database "user" dropped

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

PHP使用 mysqli_query 函数来创建或者删除 MySQL 数据库。

该函数有两个参数,在执行成功时返回 TRUE,否则返回 FALSE。

语法

mysqli_query(connection,query,resultmode);

参数

描述

connection

必需。规定要使用的 MySQL 连接。

query

必需,规定查询字符串。

resultmode

可选。一个常量。可以是下列值中的任意一个:

  • MYSQLI_USE_RESULT(如果需要检索大量数据,请使用这个)
  • MYSQLI_STORE_RESULT(默认)

实例

以下实例演示了使用PHP mysqli_query函数来删除数据库:

删除数据库

<?php
$dbhost = 'localhost';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = 'root';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('连接失败: ' . mysqli_error($conn));
}
echo '连接成功<br />';
$sql = 'DROP DATABASE RUNOOB';
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
    die('删除数据库失败: ' . mysqli_error($conn));
}
echo "数据库 RUNOOB 删除成功
";
mysqli_close($conn);
?>

五、MySQL 选择数据库

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


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

在mysql>提示窗口中可以很简单的选择特定的数据库。

在 MySQL 中,要选择要使用的数据库,可以使用USE语句,以下是基本的语法:

USE database_name;

参数说明:

  • database_name是你要选择的数据库的名称。

选择来数据库后,你的后续 SQL 查询和操作在指定的数据库database_name上执行。

实例

以下实例选取了数据库 RUNOOB:

[root@host]# mysql -u root -p
Enter password:******
mysql> use RUNOOB;
Database changed
mysql>

执行以上命令后,你就已经成功选择了 RUNOOB 数据库,在后续的操作中都会在 RUNOOB 数据库中执行。

在命令行中,你可以通过以下方式选择数据库:

mysql -u your_username -p -D your_database
  • -D参数用于指定要选择的数据库。

例如:

mysql -u root -p -D RUNOOB

在输入密码后,你将进入 MySQL 提示符,并且任何后续的查询和操作都将在 RUNOOB 数据库上执行。

请确保选择的数据库存在,否则你将收到错误消息。你可以使用SHOW DATABASES;查询可用的数据库,确保你要选择的数据库在列表中。


2、使用 PHP 脚本选择 MySQL 数据库

PHP 提供了函数 mysqli_select_db 来选取一个数据库。函数在执行成功后返回 TRUE ,否则返回 FALSE 。

语法

mysqli_select_db(connection,dbname);

参数

描述

connection

必需。规定要使用的 MySQL 连接。

dbname

必需,规定要使用的默认数据库。

实例

以下实例展示了如何使用 mysqli_select_db 函数来选取一个数据库:

选择数据库

<?php
$dbhost = 'localhost';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = '123456';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('连接失败: ' . mysqli_error($conn));
}
echo '连接成功';
mysqli_select_db($conn, 'RUNOOB' );
mysqli_close($conn);
?>

六、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。下面的表显示了需要的每个整数类型的存储和范围。

类型

大小

范围(有符号)

范围(无符号)

用途

TINYINT

1 Bytes

(-128,127)

(0,255)

小整数值

SMALLINT

2 Bytes

(-32 768,32 767)

(0,65 535)

大整数值

MEDIUMINT

3 Bytes

(-8 388 608,8 388 607)

(0,16 777 215)

大整数值

INT或INTEGER

4 Bytes

(-2 147 483 648,2 147 483 647)

(0,4 294 967 295)

大整数值

BIGINT

8 Bytes

(-9,223,372,036,854,775,808,9 223 372 036 854 775 807)

(0,18 446 744 073 709 551 615)

极大整数值

FLOAT

4 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)

单精度
浮点数值

DOUBLE

8 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)

范围

格式

用途

DATE

3

1000-01-01/9999-12-31

YYYY-MM-DD

日期值

TIME

3

‘-838:59:59’/‘838:59:59’

HH:MM:SS

时间值或持续时间

YEAR

1

1901/2155

YYYY

年份值

DATETIME

8

‘1000-01-01 00:00:00’ 到 ‘9999-12-31 23:59:59’

YYYY-MM-DD hh:mm:ss

混合日期和时间值

TIMESTAMP

4

‘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。该节描述了这些类型如何工作以及如何在查询中使用这些类型。

类型

大小

用途

CHAR

0-255 bytes

定长字符串

VARCHAR

0-65535 bytes

变长字符串

TINYBLOB

0-255 bytes

不超过 255 个字符的二进制字符串

TINYTEXT

0-255 bytes

短文本字符串

BLOB

0-65 535 bytes

二进制形式的长文本数据

TEXT

0-65 535 bytes

长文本数据

MEDIUMBLOB

0-16 777 215 bytes

二进制形式的中等长度文本数据

MEDIUMTEXT

0-16 777 215 bytes

中等长度文本数据

LONGBLOB

0-4 294 967 295 bytes

二进制形式的极大文本数据

LONGTEXT

0-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 通用语法:

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    ...
);

参数说明:

  • table_name是你要创建的表的名称。
  • column1,column2, … 是表中的列名。
  • datatype是每个列的数据类型。

以下是一个具体的实例,创建一个用户表users

实例

CREATE?TABLE?users?(
? ? id?INT?AUTO_INCREMENT?PRIMARY?KEY,
? ? username?VARCHAR(50)?NOT?NULL,
? ? email?VARCHAR(100)?NOT?NULL,
? ? birthdate?DATE,
? ? is_active?BOOLEAN?DEFAULT?TRUE
);

实例解析:

  • id: 用户 id,整数类型,自增长,作为主键。
  • username: 用户名,变长字符串,不允许为空。
  • email: 用户邮箱,变长字符串,不允许为空。
  • birthdate: 用户的生日,日期类型。
  • is_active: 用户是否已经激活,布尔类型,默认值为 true。

以上只是一个简单的实例,用到了一些常见的数据类型包括 INT, VARCHAR, DATE, BOOLEAN,你可以根据实际需要选择不同的数据类型。AUTO_INCREMENT 关键字用于创建一个自增长的列,PRIMARY KEY 用于定义主键。

如果你希望在创建表时指定数据引擎,字符集和排序规则等,可以使用CHARACTER SETCOLLATE子句:

实例

CREATE?TABLE?mytable?(
? ? id?INT?PRIMARY?KEY,
? ? name?VARCHAR(50)
)?CHARACTER?SET?utf8mb4?COLLATE?utf8mb4_general_ci;

以上代码创建一个使用 utf8mb4 字符集和 utf8mb4_general_ci 排序规则的表。

以下例子中我们将在 RUNOOB 数据库中创建数据表 runoob_tbl:

实例

CREATE?TABLE?IF?NOT?EXISTS?`runoob_tbl`(
? ?`runoob_id`?INT?UNSIGNED?AUTO_INCREMENT,
? ?`runoob_title`?VARCHAR(100)?NOT?NULL,
? ?`runoob_author`?VARCHAR(40)?NOT?NULL,
? ?`submission_date`?DATE,
? ?PRIMARY?KEY?(?`runoob_id`?)
)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 实例:

实例

root@host# mysql?-u root?-p
Enter password:*******
mysql>?USE?RUNOOB;
DATABASE?changed
mysql>?CREATE?TABLE?runoob_tbl(
? ?->?runoob_id?INT?NOT?NULL?AUTO_INCREMENT,
? ?->?runoob_title?VARCHAR(100)?NOT?NULL,
? ?->?runoob_author?VARCHAR(40)?NOT?NULL,
? ?->?submission_date?DATE,
? ?->?PRIMARY?KEY?(?runoob_id?)
? ?->?)ENGINE=InnoDB?DEFAULT?CHARSET=utf8;
Query OK,?0?ROWS?affected?(0.16?sec)
mysql>

**注意:**MySQL 命令终止符为分号;。

注意:->是换行符标识,不要复制。

2、使用 PHP 脚本创建数据表

你可以使用 PHP 的mysqli_query()函数来创建已存在数据库的数据表。

该函数有两个参数,在执行成功时返回 TRUE,否则返回 FALSE。

语法

mysqli_query(connection,query,resultmode);

参数

描述

connection

必需。规定要使用的 MySQL 连接。

query

必需,规定查询字符串。

resultmode

可选。一个常量。可以是下列值中的任意一个:

  • MYSQLI_USE_RESULT(如果需要检索大量数据,请使用这个)
  • MYSQLI_STORE_RESULT(默认)

实例

以下实例使用了PHP脚本来创建数据表:

创建数据表

<?php
$dbhost = 'localhost';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = '123456';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('连接失败: ' . mysqli_error($conn));
}
echo '连接成功<br />';
$sql = "CREATE TABLE runoob_tbl( ".
        "runoob_id INT NOT NULL AUTO_INCREMENT, ".
        "runoob_title VARCHAR(100) NOT NULL, ".
        "runoob_author VARCHAR(40) NOT NULL, ".
        "submission_date DATE, ".
        "PRIMARY KEY ( runoob_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8; ";
mysqli_select_db( $conn, 'RUNOOB' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
    die('数据表创建失败: ' . mysqli_error($conn));
}
echo "数据表创建成功
";
mysqli_close($conn);
?>
MySQL入门学习(1)。   MySQL入门学习(1) · 安装篇 PHP+MySQL+Linux目前已逐渐成为小型web服务器的一种经典组合。在indows环境下构筑和调试MySQL数据库是许多网站开发者的一种首选。本人在Windows98环境下初学MySQL,现将学习过程与经验总结出来供大家参考。 1、下载mysql-3.23.35-win.zip并解压; 2、运行setup.exe;选择d:\mysql,"tyical install" 3、启动mysql,有如下方法: · 方法一:使用winmysqladmin 1)、进入d::\mysql\bin目录,运行winmysqladmin.exe,在屏幕右下角的任务栏内会有一个带红色的图符 2)、鼠标左键点击该图符,选择“show me”,出现“WinMySQLAdmin”操作界面;首次运行时会中间会出现一个对话框要求输入并设置你的用户名和口令 3)、选择“My.INI setup” 4)、在“mysqld file”中选择“mysqld-opt”(win9x)或“mysqld-nt”(winNT) 5)、选择“Pick-up or Edit my.ini values”可以在右边窗口内对你的my.ini文件进行编辑 6)、选择“Save Modification”保存你的my.ini文件 7)、如果你想快速使用winmysqladmin(开机时自动运行),选择“Create ShortCut on Start Menu” 8)、测试: 进入DOS界面; 在d:\mysql\bin目录下运行mysql,进入mysql交互操作界面 输入show databases并回车,屏幕显示出当前已有的两个数据库mysql和test · 方法二:不使用winmysqladmin 1)、在DOS窗口下,进入d:/mysql/bin目录 2)、win9X下)运行: mysqld 在NT下运行: mysqld-nt --standalone 3)、此后,mysql在后台运行 4)、测试mysql:(在d:/mysql/bin目录下) a)mysqlshow 正常时显示已有的两个数据库mysql和test b)mysqlshow -u root mysql 正常时显示数据库mysql里的五个表: columns_priv db host tables_priv user c)mysqladmin version status proc 显示版本号、状态、进程信息等 d)mysql test 进入mysql操作界面,当前数据库为test 5)mysql关闭方法: mysqladmin -u root shutdown 4、至此,MySQL已成功安装,接着可以熟悉MySQL的常用命令并创建自己的数据库了。 上篇讲了如何安装并测试MySQL,环境建好后就可以继续我们的学习了。本篇主要熟悉一写常用命令。 · 1、启动MySQL服务器 实际上上篇已讲到如何启动MySQL。两种方法: 一是用winmysqladmin,如果机器启动时已自动运行,则可直接进入下一步操作。 二是在DOS方式下运行 d:mysqlbinmysqld · 2、进入mysql交互操作界面 在DOS方式下,运行: d:mysqlbinmysql 出现: mysql 的提示符,此时已进入mysql的交互操作方式。 如果出现 "ERROR 2003: Can´t connect to MySQL server on ´localhost´ (10061)“, 说明你的MySQL还没有启动。 · 3、退出MySQL操作界面 在mysql>提示符下输入quit可以随时退出交互操作界面: mysql> quit Bye 你也可以用control-D退出。 · 4、第一条命令 mysql> select version(),current_date(); +----------------+-----------------+ | version() | current_date() | +----------------+-----------------+ | 3.23.25a-debug | 2001-05-17 | +----------------+-----------------+ 1 row in set (0.01 sec) mysql> 此命令要求mysql服务器告诉你它的版本号和当前日期。尝试用不同大小写操作上述命令,看结果如何。 结果说明mysql命令的大
### 学习MySQL基础知识的入门指南 #### 1. **理解数据库MySQL的关系** 数据库是一个用于存储和管理数据的地方,而数据库管理系统(DBMS)则是管理和操作这些数据的工具。MySQL 是一种广泛使用的开源关系型数据库管理系统(RDBMS),它允许用户通过 SQL 查询语言来访问和处理数据[^3]。 #### 2. **安装与配置MySQL** 对于初学者来说,安装 MySQL 并正确配置它是第一步。可以选择官方提供的安装包或免安装版进行配置。以下是几个关键点: - 默认端口为 `3306`,确保该端口未被其他程序占用。 - 字符编码应设置为 UTF-8,以便支持多种语言字符集。 - 超级管理员账户名为 `root`,需为其设定安全密码[^3]。 #### 3. **学习SQL基础** SQL(Structured Query Language)是用于操作关系型数据库的标准语言。掌握以下基本概念至关重要: - 数据库的基本操作:创建、删除、修改数据库。 - 表的操作:设计表结构、插入数据、更新数据、删除数据。 - 常见查询技巧:筛选条件、排序、分组统计等[^4]。 #### 4. **实践项目建议** 理论结合实际才能更好地巩固所学知识。可以从以下几个方面入手: - 使用 Python 或 PHP 编写简单应用程序并与 MySQL 连接[^2]。 - 构建个人博客系统作为练习目标,熟悉 MVC 架构模式。 - 尝试实现一些小型功能模块,比如用户注册登录验证机制。 #### 5. **推荐资源列表** 针对零基础学员,《Python核心编程》虽侧重于另一领域但仍具参考价值;同时可参照具体章节逐步深入探索整个生态系统[^4]。 ```python import mysql.connector # 创建连接对象 conn = mysql.connector.connect( host="localhost", # 主机地址 user="your_username", # 用户名 password="your_password"# 密码 ) cursor = conn.cursor() query = ("SELECT * FROM your_table_name;") cursor.execute(query) for row in cursor.fetchall(): print(row) cursor.close() conn.close() ``` 以上代码展示了如何利用 Python 访问 MySQL 中的数据表格内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值