1.SQL
1.简介
SQL:结构化查询语言(Structured Query Language),在关系型数据库上执行数据操作、数据检索以及数据维护的标准语言。使用SQL语句,程序员和数据库管理员可以完成如下的任务
改变数据库的结构
更改系统的安全设置
增加用户对数据库或表的许可权限
在数据库中检索需要的信息
对数据库的信息进行更新
2.分类
MySQL致力于支持全套ANSI/ISO SQL标准。在MySQL数据库中,SQL语句主要可以划分为以下几类
DDL(Data Definition Language):数据定义语言,定义对数据库对象(库、表、列、索引)的操作。 CREATE、DROP、ALTER、RENAME、 TRUNCATE等。
DML(Data Manipulation Language): 数据操作语言,定义对数据库记录的操作。 INSERT、DELETE、UPDATE、SELECT等
DCL(Data Control Language): 数据控制语言,定义对数据库、表、字段、用户的访问权限和安全级别。 GRANT、REVOKE等 Transaction Control:事务控制 COMMIT(提交)、ROLLBACK(回滚((撤回))、SAVEPOINT(还原点)等
2.库操作
数据库的操作:
新建数据库: create database db_name
同一个数据库底下(同一个schema)不能使用同一个名字。
删除数据库: drop database db_name
展示数据库: show databases like ''
修改数据库: alter database db_name切换数据库:use 数据库名
3.表操作
1.创建表:
简单语法:
CREATE TABLE 表名(
列名 列类型 [列约束] [注释],
列名 列类型
);
常用的数据类型:
2.查看表
语法:SHOW TABLES[FROM 数据库名][LIKE wild];
查看建表语句:mysql> show create table stu_info;
查看表的结构:mysql> desc stu_info;查看数据表中各列的信息:
用“SHOW CREATE TABLE 表名\G”可以查看更全面的表定义信息
用“SHOW CREATE TABLE 表名\g”等同于加上定界符
3.删除表
语法: DROP TABLE [IF EXISTS] 表名;
4.修改表的结构
修改列类型
ALTER TABLE 表名 MODIFY 列名 列类型;
增加列
ALTER TABLE 表名 ADD 列名 列类型;
删除列
ALTER TABLE 表名 DROP 列名;
列改名
ALTER TABLE 表名 CHANGE 旧列名 新列名 列类型;
更改表名
ALTER TABLE 表名 RENAME 新表名;
RENAME TABLE 表名 TO 新表名;
5.复制表的结构
方法一:在create table语句的末尾添加like子句,可以将源表的表结构复制到新表中,语法格式如下。
create table 新表名 like 源表方法二:在create table语句的末尾添加一个select语句,可以实现表结构的复制,甚至可以将源表的表
记录拷贝到新表中。下面的语法格式将源表的表结构以及源表的所有记录拷贝到新表中。
create table 新表名 select * from 源表
方法三:如果已经存在一张机构一致的表,复制数据
insert into 表 select * from 原表;