SQL基础知识
一、数据库的基本概念
1.数据库的英文
数据库的英文单词:DataBase 简称:DB
2.什么是数据库
用于存储和管理数据的仓库。
3.数据库的特点
(1)持久化存储数据 (其实就是一个文件系统)
(2)方便存储和管理数据
(3)使用同一的方式操作数据库(SQL)
二、什么是SQL?
Structured Query Language:结构化查询语言
其实就是定义了操作所有关系型数据的规则
每一种数据库的操作的方式存在不一样的地方,称为“方言”
三、SQL通用语法
1.SQL语句可以单行或多行书写,以分号结尾
2.可以使用空格和缩进来增强语句的可读性
3.MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。
4.3种注释
单行注释:* 注释内容 或 # 注释内容(mysql特有)
多行注释:/** 注释内容 */
四、SQL分类
1.DDL(Data Definition Language)数据库定义语言
用来定义数据库对象:数据库,表,列。关键字:create,drop,alter等。
2.DML(Data Manipulation Language)数据操作语言
用来对数据库中表的数据进行增删改。关键字:insert,delete,update等。
3.DQL(Data Query Language)数据查询语言
用来查询数据库中表的记录(数据)。关键字:select,where等。
4.DCL(Data Control Language)数据控制语言(了解)
用来定义数据库的访问权限和安全级别,及创建用户。关键字:GRANT,REVOKE等。
五、MySQL常用数据类型
1.int:整数类型 eg:age int
2.double:小数类型 eg:score double(5,2)–>共5位,保留2位小数
3.date:日期,包含年月日 yyyy-MM-dd
4.datetime:日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss
5.timestamp:时间戳类型 包含年月日时分秒 yyyy-MM-dd HH:mm:ss
注:如果将来不给这个字段赋值或赋值为null,则默认使用当前的系统时间自动赋值
6.varchar:字符串 eg:name varchar(20) 姓名最大20个字符 zhangsan->8个字符 张三->2个字符
六、MySQL数据库软件
1.MySQL服务的启动
(1)手动。cmd–> service.msc 打开服务窗口
(2)使用管理员打开cmd
net start mysql:启动mysql服务
net stop mysql:关闭mysql服务
2.MySQL的登录
(1)mysql -uroot -p密码
(2)mysql -h ip - uroot -p密码
3.MySQL的退出
(1)exit
(2)quit
七、MySQL基础用法
show databeses; //查看数据库
use 数据库名; //使用数据库
show tables; //查看表
set names gbk; //解决dos窗口乱码
select * from emp; //查看emp表
select * from emp\G; //制表展示数据(mysql特有)
DROP DATEBASE [IF EXISTS] 数据库名; //删除数据库
CREATE DATABASE [IF NOT EXISTS] 数据库名; //创建数据库 eg:CREATE DATABASE day1 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
1.查看数据库:SHOW DATABASES;
2.使用数据库:USE 数据库名; eg:USE day1;
3.创建表
CREATE TABLE [IF NOT EXISTS] `表名`(
`字段名1` 列类型[属性] [索引] [注释],
`字段名2` 列类型[属性] [索引] [注释],
...
`字段名n` 列类型[属性] [索引] [注释],
)[表类型] [表字符集] [注释];
eg:
CREATE TABLE teacher(
id INT,
NAME VARCHAR(20)
);
4.查看所有表:SHOW TABLES;
5.查看表结构
DESC teacher;
DROP TABLE IF EXISTS student;
CREATE TABLE student(
id INT,
NAME VARCHAR(20),
gender VARCHAR(2),
age INT
);
DESC student;