数据库基本知识和基础sql语句
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库的发展历程
没有数据库,使用磁盘文件存储数据;
层次结构模型数据库;
网状结构模型数据库;
关系结构模型数据库:使用二维表格来存储数据;
关系-对象模型数据库;
理解数据库
RDBMS = 管理员(manager)+仓库(database)
database = N 个table
table:
表结构:定义表的列名和列类型!
表记录:一行一行的记录!
Mysql 安装目录:
bin 目录中都是可执行文件;
my.ini 文件是MySQL的配置文件;
相关命令:
启动:net start mysql ;
关闭:net stop mysql ;
mysql -u root -p 123 -h localhost ;
-u:后面的root 是用户名,这里使用的是超级管理员root ;
-p:后面的123 是密码,这是在安装MySQL时就已经指定的密码;
退出:quit 或exit;
sql 语句
语法要求
SQL语句可以单行或多行书写,以分号结尾;
可以用空格和缩进来来增强语句的可读性;
关键字不区别大小写,建议使用大写;
分类
DDL(Data Definition Language ):数据定义语言,用来定义数据库对象:库、表、列
等;
DML(Data Manipulation Language ):数据操作语言,用来定义数据库记录(数据);基本操作
查看所有数据库名称:SHOW DATABASE;S
切换数据库:USE mydb1,切换到mydb1 数据库;
创建数据库:CREATE DATABASE [IF NOT EXISTS] my;db1
修改数据库编码:ALTER DATABASE mydb1 CHARACTER SET utf8
创建表:
CREATE TABLE表名(
列名列类型,
列名列类型,
......
);
查看当前数据库中所有表名称:SHOW TABLE;S
查看指定表的创建语句:SHOW CREATE TABLE em,p查看emp 表的创建语句;
查看表结构:DESC emp,查看emp 表结构;
p删除emp 表;
删除表:DROP TABLE em,
修改表:
1. 修改之添加列:给stu 表添加classname 列:
ALTER TABLE stu ADD (classname varchar(100));
2. 修改之修改列类型:修改stu 表的gender 列类型为CHAR(2):
ALTER TABLE stu MODIFY gender CHAR(2);
3. 修改之修改列名:修改stu 表的gender 列名为sex:
ALTER TABLE stu change gender sex CHAR(2);
4. 修改之删除列:删除stu 表的classname 列:
ALTER TABLE stu DROP classname;
5. 修改之修改表名称:修改stu 表名称为student :
ALTER TABLE stu RENAME TO student;
其他常用命令:
mysql 基本操作命令
一、数据库操作
1. 新增数据库
create database 数据库名字[数据库选项];
数据库选项:规定数据库内部该用什么进行规范
字符集:charset 具体字符集(utf8)
校对集:collate 具体校对集(依赖字符集)
2. 查看数据库
2.1 查看所有的数据库
show databases;
匹配查询:
show databases like 'pattern'; #pattern 可以使用通配符
_ :下划线匹配,表示匹配单个任意字符,如:_s ,表示任意字符开始,但是以s 结尾的数据库
% :百分号匹配,表示匹配任意个数的任意字符,如:student% ,表示以student 开始的所有数据库
2.2 查看数据库的创建语句
show create database 数据库名字;
3. 修改数据库
数据库名字在mysql 高版本中不允许修改,所以只能修改数据库的库选项(字符集和校对
集)
alter database 数据库名字[ 数据库选项];
eg:alter database stu charset utf8;
4. 删除数据库
对于数据库的删除要谨慎考虑,是不可逆的。
drop database 数据库名字;
4. 选择数据库
use 数据库名字;
二、数据表操作(字段)
1. 新增数据表
create table 表名(
字段名 1 数据类型comment ' 备注...',
字段名 2 数据类型comment ' 备注...',
.... # 最后一行不需要逗号
)[ 表选项];
表选项:
1 )字符集:charset/character set (可以不写,默认采用数据库的)
2)校对集:collate
3 )存储引擎:engine = innodb (默认的):存储文件的格式(数据如何存储)