一、SQL语言定义
结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
二、SQL语言分类
可分为四大类:
1、数据定义语言(DDL:Data DeFinition Language):其语句包括动词CREATE,ALTER和DROP。在数据库中创建新表或修改、删除表(CREATE TABLE 或 DROP TABLE);为表加入索引等。
2、数据操作语言(DML:Data Manipulation Language):其语句包括动词INSERT、UPDATE和DELETE。它们分别用于添加、修改和删除。
3、数据查询语言(DQL: Data Query Language):其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其它类型的SQL语句一起使用。
4、数据控制语言(DCL:Data Control Language):它的语句通过GRANT或REVOKE实现权限控制,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。
三、 DDL
后续的大写命令均可以小写。
3.1 数据库管理
-
查看所有库
语法:SHOW DATABASES;
show databases;
-
创建数据库
语法:CREATE DATABASE 数据库名;;
create database testdb;
show databases;
-
选择/进入数据库
USE 数据库名;
SELECT database(); #如果忘记在哪个库里面可查询当前所在库
-
删除库
DROP DATABASE 数据库名;
drop database testdb; #删除testdb数据库
show databases; #查看是否删除
数据库在系统中的位置 /var/lib/mysql ,目录里面的其他文件可自行百度了解
3.2 表管理
创建表的目的:表是数据库存储数据的基本单位,表由若干个字段(列)组成,主要用来存储数据记录(行)。
-
创建表
创建 表格 表名 (列名1 类型,列名2 类型 );
CREATE TABLE t1 (id int);
use testdb;
create table t1 (id int, name varchar(20));
-
查看所有表名字
show tables;
-
查看表结构
desc t1;
-
插入数据
insert into 表名 values(字段值列表...);
INSERT INTO t1 VALUES (1);
插入数据时数字不能加引号,字符必须加引号防止出现特殊含义的字符被bash误识别。
insert into t1 values (1);
INSERT INTO t2 VALUES (1,"zhangsan");
-
查看表中数据
SELECT * FROM t1;
select * from t1;
select * from t2;
-
删除表
drop table t1;