MySL必知必会.doc
文本预览下载声明
MySQL必知必会
了解SQL
数据库基础
数据库(Database):保存有组织的数据的容器(通常是一个文件或一组文件),是通过DBMS创建和操纵的容器。
表(table):某种特定类型数据的结构化清单。表名具有唯一性。
模式(schema):关于数据库和表的布局及特性的信息。
列(column):表中的一个字段。所有表都是由一个或多个列组成的。
分解数据:正确地数据分解为多个列极为重要。这样才有可能利用特定的列对数据进行排序和过滤。
数据类型(datatype):所容许的数据的类型。每个表列都有相应的数据类型,它限制或容许该列存储的数据。
行(row):表中的一个记录。
主键(primary key):一列(或一组列),其值能够唯一区分表中的每个行。(应该总是定义主键,主键列不允许NULL值)
主键的好习惯:不更新主键列中的值;不重用主键列的值;不在主键列中使用可能会更改的值。
什么是SQL
SQL(Structured Query Language):结构化查询语言。
MySQL简介
2.1什么是MySQL
A.MySQL是一种DBMS,即它是一种数据库软件。种类:一类基于共享文件系统的DBMS,另一类基于客户机-服务器的DBMS。
B.客户机-服务器软件:服务器部分是负责所有数据访问和处理的一个软件,它运行在称为数据库服务器的计算机上。客户机是与用户打交道的软件(所有请求或更改来自运行客户机软件的计算机)。
C.服务器软件为MySQL DBMS,客户机可以是MySQL提供的工具,脚本语言,web开发语言,程序设计语言。
2.2 MySQL工具(已经集成到MySQL Workbench)
A.MySQL命令实用程序
B.MySQL Administrator:用于简化MySQL服务器的管理。
C.MySQL Query Browser:用来编写和执行MySQL命令。
使用MySQL
3.1 连接
A.如何连接和登录到MySQL,为了连接到MySQL,需要一下信息:主机名(计算机名)——如果连接到本地MySQL服务器,为localhost;端口(使用默认端口3306之外的端口);一个合法的用户名;用户口令(如果需要的话)。
3.2 选择数据库
A.在执行任何数据库操作前,需要选择一个数据。为此,可使用USE关键字。
B.关键字(key word):作为MySQL语言组成部分的一个保留字。
C.(USE crashcource;)必须先使用USE打开数据库,才能读取其中的数据。
3.3 了解数据库和表
A.(SHOW DATABASES;)数据库、表、列、用户、权限等信息被存储在数据库和表中。
B.不过,内部的表一般不直接访问。(可用SHOW命令来显示这些信息,MySQL从内部表中提取这些信息。)SHOW TABLES; SHOW COLUMNS FROM customers;
C.什么是自动变量?某些表列需要唯一值。在每个行添加到表中时,MySQL可以自动地为每个行分配下一个可用编号,不用在添加一行时手动分配唯一值。
D.DESCRIBE语句:MySQL支持用 DESCRIBE作为SHOW COLUMNS FROM的一种快捷方式。
4.1 SELECT语句
A.SELECT语句的用途是从一个或多个表中检索信息。
4.2 检索单个列
A.SELECT prod_name FROM products;
B.未排序数据:如果没有明确排序查询结果,则返回的数据的顺序没有特殊意义。
C.结束SQL语句:多条SQL语句必须以分号分隔。如果使用的是MySQL命令行,必须加上分号来结束SQL语句。
D.SQL语句和大小写:SQL语句不区分大小写,但是一般对所有SQL关键字使用大写,而对所有列和表名使用小写。
E.使用空格:在处理SQL语句时,其中所有空格都被忽略。
4.3 检索多个列
A.当心逗号:在选择多个列时,一定要在列名之间加上逗号,但最后一个列名后不加。SELECT prod_id, prod_name, prod_price FROM products;
B.数据表示:SQL语句一般返回原始的,无格式的数据。数据的格式化是一个表示问题,而不是一个检索问题。因此,表示(对齐和显示上面的价格值,用货币符号和逗号表示其金额)一般在现实该数据的应用程序中规定。
4.4 检索所有列
A.SELECT * FROM products;
B.使用通配符:一般,除非你确定需要表中的每个列,否则最好不要使用*通配符。检索不需要的列通常会降低检索和应用程序的性能。
C.检索未知列:由于不明确指定列名,所以能检索出名字未知的列。
4.5 检索不同行
A.SELECT vend_id FROM products;
B.SELECT DISTINCT v
显示全部