初识数据库
初识数据库
数据库:DataBase,简称DB
数据库是长期存放在计算机内、有组织、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种 用户共享
数据库管理系统:DataBase Management System,简称DBMS
MySQL、Oracle、SQLite、Access、MS SQL Server
mysql主要用于大型门户,例如搜狗、新浪等,它主要的优势就是开放源代码,因为开放源代码这个数据库是免费的,他现在是甲骨文公司的产品。
oracle主要用于银行、铁路、飞机场等。该数据库功能强大,软件费用高。也是甲骨文公司的产品。
sql server是微软公司的产品,主要应用于大中型企业,如联想、方正等。
数据库管理员 DBA(Database Administrator)
数据库的类别
关系型数据库 :相对慢
非关系型数据库:相对快
快递 快递单号
视频 电影的id:电影的内容
数据库的安装
初识MySQL
SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型:
1、DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER
2、DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE、查询数据SELECT
3、DCL语句 数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE
启动MySQL服务
mysqld install 安装mysql服务 mysql服务就被注册到操作系统中
net start mysql 启动mysql服务
net stop mysql 关闭mysql服务
简单的用户指令
#进入mysql客户端
>>>mysql
mysql> select user(); #查看当前用户
mysql> exit # 也可以用\q quit退出
# 默认用户登陆之后并没有实际操作的权限
# 需要使用管理员root用户登陆
>>>mysql -uroot -p # mysql5.6默认是没有密码的
# 遇到password直接按回车键
mysql> mysql> set password = password('123'); # 给当前数据库设置密码
# 创建账号
mysql> create user 'eva'@'192.168.10.%' IDENTIFIED BY '123';# 指示网段
mysql> create user 'eva'@'192.168.10.5'; # 指示某机器可以连接
mysql> create user 'eva'@'%'; # 指示所有机器都可以连接
mysql> show grants for 'eva'@'192.168.10.5';# 查看某个用户的权限
# 远程登陆
>>>mysql -uroot -p123 -h 192.168.10.3;
# 给账号授权
mysql> grant all on *.* to 'eva'@'%';
mysql> grant 权限类型 on ftp.* to 'guest'@'192.168.14.%';
mysql> flush privileges; # 刷新使授权立即生效
权限类型:
all :所有权限
select :阅读,浏览
insert :添加,插入
# 创建账号并授权
mysql> grant all on *.* to 'eva'@'%' identified by '123'
简单的增删改查
1. 操作文件夹(库)
增:create database db1 charset utf8;
查:show databases;
改:alter database db1 charset latin1;
删除: drop database db1;
2. 操作文件(表)
先切换到文件夹下:use db1
增:create table t1(id int,name char);
查:show tables;
改:alter table t1 modify name char(3);
alter table t1 change name name1 char(2);
删:drop table t1;
3. 操作文件中的内容(记录)
增:insert into t1 values(1,'egon1'),(2,'egon2'),(3,'egon3');
查:select * from t1;
改:update t1 set name='sb' where id=2;
删:delete from t1 where id=1;
清空表:
delete from t1; #如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。
truncate table t1;数据量大,删除速度比上一条快,且直接从零开始,
*auto_increment 表示:自增
*primary key 表示:约束(不能重复且不能为空);加速查找

浙公网安备 33010602011771号