创建数据库:
CREATE DATABASE [IF NOT EXISTS] 库名
例子:
CREATE DATABASE `mydb`;
CREATE DATABASE IF NOT EXISTS `mydb`;
注意:
如果库名已经存在,不加上IF NOT EXISTS则会报错,加上只会警告。
删除数据库:
DROP DATABASE [IF EXISTS] 库名;
例子:
DROP DATABASE `mydb`;
DROP DATABASE IF EXISTS `mydb`;
注意:
如果库名不存在,不加上IF EXISTS则会报错,加上只会警告。
打开数据库:
USE 数据库名称
刚进入mysql时,并不在任何一个数据库里,无法直接对表进行操作。
查看数据库中的表:
SHOW TABLES [FROM 库名];
例子:
SHOW TABLES; 查看当前数据库中的数据表。
SHOW TABLES FROM ‘mysql‘; 查看mysql这个数据库中的数据表。
创建数据表:
CREATE TABLE [IF NOT EXISTS] 表名(
列名1 数据类型,
列名2 数据类型,
列名n 数据类型
)
例子:
CREATE TABLE `tb1`(`id` INT comment ‘编号‘,`name` VARCHAR(20) comment ‘名字‘);
注意:
例子中comment是用来说明的,给人看的
查看创建的表:
SHOW CREATE TABLE 表名;
可以看到比较完整的创建该表用的语句。
例子:SHOW CREATE TABLE `tb1`;
查看数据表结构:
DESCRIBE 表名;
DESC 表名;
SHOW COLUMNS FROM ‘表名‘;
例子:
DESCRIBE tb1;
DESC tb1;
SHOW COLUMNS FROM ‘tb1‘;
删除数据表:
DROP TABLE ‘表名‘;
例子:DROP TABLE tb1;
INSERT 插入数据:
INSERT INTO 表名 VALUES (值1, 值2,....);
按照创建表的列顺序,插入一个数据条目
例子:INSERT INTO tb1 VALUES (1,‘abc‘);
INSERT INTO 表名 (列1, 列2,...) VALUES (值1, 值2,....);
可以调整插入数据的列顺序,或者忽略某个列,后面值的顺序要和列的顺序一一对应
例子:INSERT INTO tb1 (name,id) VALUES (‘bbc‘,2);
INSERT INTO 表名 SET 列名1=值1,列名2=值2, .... ;
可以直观看到每个列和值的对应关系
例子:INSERT INTO tb1 SET name=‘qqq‘, id=22;
DELETE 删除数据:
DELETE FROM 表名 [WHERE字句];
删除符合WHERE字句描述的所有条目,不带WHERE字句表示删除该表所有条目,WHERE字句是可选项,后续单独介绍
例子:DELETE FROM tb1;
UPDATE 更新数据:
UPDATE 表名 SET 列名1=值1[,列名2=值2]...[WHERE字句];
更新或者说修改符合WHERE字句的条目,不带WHERE字句表示修改该表所有条目,WHERE字句是可选项,后续单独介绍
UPDATE tb1 SET name=‘test‘;
SELECT 查询数据:
SELECT 列名1[,列名2...] FROM 表名 [WHERE字句];
列名序列可以用一个*代表所有列,WHERE字句是可选项,后续单独介绍
例子:SELECT name,id FROM tb1;
WHERE子句:
WHERE 子句用于规定选择的标准。
WHERE子句:
WHERE 子句用于规定选择的标准,格式为 [WHERE 列 运算符 值]
下面的运算符可在 WHERE 子句中使用:
操作符 | 描述 |
---|---|
= | 等于 |
<> | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
BETWEEN | 在某个范围内 |
LIKE | 搜索某种模式 |
例子:
SELECT name,id FROM tb1 WHERE name=‘abc‘;
UPDATE tb1 SET name=‘test‘ WHERE id=22;
DELETE FROM tb1 WHERE id<3;
注意:
SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号。