SQL 语法
1. 数据库 和 表
一个数据库通常包含一个或多个表。每个表都有一个名字标识,表里包含带有数据的记录。
在本教程中,我们在 MySQL 的 CodeBaoku 数据库中创建了一个 website 表,用于存储网站记录。
查看 "website" 表的数据:
mysql> use CodeBaoku; Database changed mysql> set names utf8; Query OK, 0 rows affected (0.00 sec) mysql> SELECT * FROM website; +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | Google | https://www.google.cm/ | 1 | USA | | 2 | 淘宝 | https://www.taobao.com/ | 13 | CN | | 3 | 编程宝库 | http://www.codebaoku.com/ | 200 | CN | | 4 | 微博 | http://weibo.com/ | 20 | CN | | 5 | Facebook | https://www.facebook.com/ | 3 | USA | +----+--------------+---------------------------+-------+---------+ 5 rows in set (0.01 sec)
范例 SQL 语句解析:
- use CodeBaoku; 命令用于选择数据库。
- set names utf8; 命令用于设置使用的字符集。
- SELECT * FROM website; 读取数据表的信息。
- 上面的表包含五条记录(每一条对应一个网站信息)和5个列(id、name、url、alexa 和country)。
2. SQL 语句规范
我们在数据库上执行的大部分工作都由 SQL 语句完成。
下面的 SQL 语句从 "website" 表中选取所有记录:
SELECT * FROM website;
1)SQL 语句大小写规则
- SQL 语句的关键字对大小写不敏感:SELECT 与 select 是相同的。
- Linux/Unix 下数据库名与表名是严格区分大小写的,Windows 不区分。
- Linux/Unix 下的别名是严格区分大小写的,Windows 不区分。
- 列名与列的别名对大小写不敏感。
- 字段内容对大小写不敏感。
2)SQL 语句末端分号
分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的 SQL 语句。
在本教程中,我们默认在每条 SQL 语句的末端使用分号。
3. 常用 SQL 语句
- SELECT - 从数据库中查询获取数据
- UPDATE - 更新数据库中的数据
- DELETE - 删除数据库中的数据
- INSERT - 向数据库中添加新数据
- CREATE DATABASE - 创建新数据库
- CREATE TABLE - 创建新表
- ALTER TABLE - 变更表的属性
- DROP TABLE - 删除表
- CREATE INDEX - 创建索引
- DROP INDEX - 删除索引
SELECT 语句用于从数据库中选取数据,选中的数据集合称为结果集。SQL SELECT 语法 SELECT column_name,column_name FROM table_name。