SQL 概念和语法

      SQL 是结构化查询语言,SQL 由规范语法和特有语法组成。不同的关系型都数据库都支持 SQL 规范语法,同时也有各自独有的 SQL 语法。每条 SQL 语句以分号结尾,SQL 语句中不区分大小写,但是关键字一般使用大写。SQL 规范语法中提供了两种注释方式,在 MySQL 中有自己特有的注释方式,分别如下:

注释语法

说明

--空格

单行注释

/**/

多行注释

#

单行注释,只能在 MySQL 中使用

操作数据库

一、创建数据库

创建数据库

语法:CREATE DATABASE 数据库名;

创建数据库并判断数据库是否存在,如果不存在则创建,否则反之

语法:CREATE DATABASE IF NOT EXISTS 数据库名;

创建数据库,并指定字符集

语法:CREATE DATABASE 数据库名 CHARACTER SET 字符集;

二、查看数据库

查看所有数据库

语法:SHOW DATABASES;

查看数据库定义信息

语法:SHOW CREATE DATABASE 数据库名;

三、修改数据库

修改数据库字符集

语法:ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集;

四、删除数据库

删除数据库

语法:DROP DATABASE 数据库名;

五、使用数据库

查看正在使用的数据库

语法:SELECT DATABASE();(MySQL 语法)

使用或切换数据库

语法:USE 数据库名;

操作表结构

一、创建表

创建表

语法:CREATE TABLE 表名(字段名1 字段类型,字段名2 字段类型);

创建一个结构相同的表

语法:CREATE TABLE 新表名 LIKE 旧表名;

二、查看表

查看数据库中的所有表

语法:SHOW TABLES;

查看表结构

语法:DESC 表名;

查看创建表的 SQL 语句

语法:SHOW CREATE TABLE 表名;

三、删除表

直接删除表

语法:DROP TABLE 表名;

删除表,先判断表是否存在,如果存在则删除,否则反之

语法:DROP TABLE IF EXISTS 表名;

四、修改表结构

表添加字段

语法:ALTER TABLE 表名 ADD 字段名 数据类型;

修改表字段数据类型

语法:ALTER TABLE 表名 MODIFY 字段名 数据类型;

修改表字段名

语法:ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型;

删除表字段

语法:ALTER TABLE 表名 DROP 字段名;

修改表名

语法:RENAME TABLE 表名 TO 新表名;

修改表字符集

语法:ALTER TABLE 表名 CHARACTER SET 字符集;

五、SQL 数据类型

分类

类型名称

说明

整数

TINYINT

微整形(1 个字节)

SMALLINT

小整型(2 个字节)

MEDIUMINT

中整形(3 个字节)

INT

整形(4 个字节)

INTEGER

整形(4 个字节)

小数

FLOAT

单精度浮点数(4 个字节)

DOUBLE

双精度浮点数(8 个字节)

日期

TIME

表达时间类型

DATE

表达日期类型

DATETIME

可表示时间类型也可表示日期类型

字符串

CHAR(m)

固定长度字符串,m 取值:0~255

VARCHAR(m)

可变长度字符串,m 取值:0~25535

大二进制

TINYBLOB

允许长度:0~225字节

BLOB

允许长度:0~65535字节

MEDIUMBLOB

允许长度:0~167772150字节

LONGBLOB

允许长度:0~4294967295字节

大文本

TINYTEXT

允许长度:0~225字节

TEXT

允许长度:0~65535字节

MEDIUMTEXT

允许长度:0~167772150字节

LONGTEXT

允许长度:0~4294967295字节