目录
一:目标
如何连接和登录到
MySQL
,如何执行
MySQL语句,以及如何获得数据库和表的信息。
二:连接MySQL数据库
MySQL
与所有客户机
—
服务器
DBMS一样,要求在能执行命令之前登录到
DBMS
。登录名可以与网络登录名不相同(假定你使用网络)。MySQL在内部保存自己的用户列表,并且把每个用户与各种权限关联起来。
在最初安装
MySQL
时,很可能会要求你输入一个管理登录(通常为
root
)和一个口令。如果你使用的是自己的本地服务器,并且是简单地
试验一下
MySQL
,使用上述登录就可以了。但现实中,管理登录受到密
切保护(因为对它的访问授予了创建表、删除整个数据库、更改登录和
口令等完全的权限)。
ps:使用MySQL Administrator MySQL Administrator Users视图提供了一个简单的界面,可用来定义新用户,包括赋予口令和访问权限。
为了连接到MySQL,需要以下信息:
- 主机名(计算机名)——如果连接到本地MySQL服务器,为localhost;
- 端口(如果使用默认端口3306之外的端口);
- 一个合法的用户名;
- 用户口令(如果需要)。
所有这些信息都可以传递给
mysql命令行实用程序,或输入到
MySQL Administrator
和
MySQL Query Browser
的服务器连接屏幕。
在连接之后,你就可以访问你的登录名能够访问的任意数据库和表了。
三:选择数据库
在你最初连接到
MySQL时,没有任何数据库打开供你使用。在你能执行任意数据库操作前,需要选择一个数据库。为此,可使用
USE
关键字。
关键字( key word ) 作为 MySQL语言组成部分的一个保留字,决不要用关键字命名一个表或列。附录 E 列出了 MySQL 的关键字 。
案例:使用db_shopping数据库
use db_shopping;
ps:必须先使用USE打开数据库,才能读取其中的数据。
四:了解数据库和表
如果你不知道可以使用的数据库名时怎么办?这时,MySQLAdministrator
和
MySQL Query Browser
怎样能显示可用的数据库列表?
数据库、表、列、用户、权限等的信息被存储在数据库和表中(MySQL使用
MySQL来存储这些信息)。不过,内部的表一般不直接访问。可用MySQL
的
SHOW
命令来显示这些信息(
MySQL
从内部表中提取这些信息)
- SHOW DATABASES;返回可用数据库的一个列表。包含在这个列表中的可能是MySQL内部使用的数据库(如例子中的mysql和information_schema)。当然,你自己的数据库列表可能看上去与这里的不一样。
为了获得一个数据库内的表的列表,使用
SHOW TABLES;
,如下所示:
- SHOW COLUMNS 要求给出一个表名(这个例子中的 FROMcustomers),它对每个字段返回一行,行中包含字段名、数据类型、是否允许NULL、键信息、默认值以及其他信息(如字段bid的auto_increment)。
问:
什么是自动增量?
答:
某些表列需要唯一值。例如,订单编号、雇员
ID
或(如上面例子中所示的)顾客
ID。在每个行添加到表中时,MySQL可以自动地为每个行分配下一个可用编号,不用在添加一行时手动分配唯一值(这样做必须记住最后一次使用的值)。这个功能就是所谓的自动增量。如果需要它,则必
须在用
CREATE
语句创建表时把它作为表定义的组成部分
ps:
DESCRIBE
语句
ps:
MySQL
支持用
DESCRIBE作为SHOW COLUMNSFROM的一种快捷方式。换句话说,DESCRIBE t_book;是SHOW COLUMNS FROM t_book;的一种快捷方式。
所支持的其他SHOW语句还有:
- SHOW STATUS,用于显示广泛的服务器状态信息;
- SHOW CREATE DATABASE和SHOW CREATE TABLE,分别用来显示创建特定数据库或表的MySQL语句;
- SHOW GRANTS,用来显示授予用户(所有用户或特定用户)的安全权限;
- SHOW ERRORS和SHOW WARNINGS,用来显示服务器错误或警告消息。