初识数据库

数据库

什么是数据库

数据库即存放数据(描述事物的符号记录如数字、图像、语言等称为数据)的仓库,这个仓库是在计算机的存储数据上,且数据是按一定的格式存放的

为什么要用数据库

工作中将文件和程序存放在一台机器上是不合理的,且操作文件是一件麻烦的事,所以引出了数据库这个概念

数据库可以理解为是一个可以在一台机器上独立工作的,并且可以给我们提供高效、便捷的方式对数据进行增删改查的一种工具

数据库的优势

1. 程序稳定性 :这样任意一台服务所在的机器崩溃了都不会影响数据和另外的服务。

2. 数据一致性 :所有的数据都存储在一起,所有的程序操作的数据都是统一的,就不会出现数据不一致的现象

3. 并发 :数据库可以良好的支持并发,所有的程序操作数据库都是通过网络,而数据库本身支持并发的网络操作,不需要我们自己写socket

4. 效率 :使用数据库对数据进行增删改查的效率要高出我们自己处理文件很多

数据库管理系统

可以通过数据库管理系统科学的组织和存储数据,高效获取和维护数据

根据数据库管理软件存取数据的特点,数据库管理系统可以分为关系型数据库和非关系型数据库

关系型数据库:需要有表结构,如sqllite,db2,oracle,access,sql server,MySQL,注意:sql语句通用

非关系型数据库:没有表结构,通过 key - value 存储,如mongodb,redis,memcache

数据库服务器,数据库管理系统,数据库,表与记录的关系

表        即文件,用来存放多行/多条内容

数据库                即文件夹,用来组织文件/表

数据库管理系统  即软件,用来管理数据库

数据库服务器     即计算机,用来运行数据库管理软件

初识MySQL

MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL 是最流行的关系型数据库管理系统之一,MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

初识SQL语句

SQL : 结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序语言设计,用于存取数据以及查询、更新和管理关系数据库系统

SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型:

  1、DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER

  2、DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE、查询数据SELECT

  3、DCL语句 数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE

在终端窗口中
mysql    进入mysql客户端
mysql -uroot    表示要以root用户登录,第一次以root身份登录没有密码
    set password = password('123')    设置密码
mysql -uroot -p回车    通过密码以root身份登录,回车之后输入密码
mysql -uroot -p密码    通过密码以root身份登录,登录时就输入密码,不推荐,不安全
mysql -u用户名 -p密码 -hIP    登录

进入mysql程序后
select user();    查看当前用户
create user '用户名'@'IP' identified by '密码';    创建一个账号
                               IP:192.168.13.254     指定某机器可以连接
                               IP:192.168.13.%        指定网段可以连接
                               IP:%                         所有机器都可以连接
grant select on 数据库名.* to 'eva'@'192.168.13.%';    
        给一个已经存在的账号授权,使其可以查看指定数据库中内容    
grant select on *.* to '用户名'@'IP' identified by '123';
        创建一个账号并授权,使其可所有数据库中内容 
终端中MySQL程序环境下

库的基本操作

show databases;    查看有哪些数据库
create database 库名;    创建一个库
use 库名    切换到这个库的文件夹下
drop database 库名;    从删库到跑路

表的基本操作

show tables;    查看当前库中有多少张表
create table 表名 (id int,name char(12));    创建一个表(char(12)表示最多有12个字符)
desc/describe 表名;    查看表的结构
drop table 表名;    删除表
alter table 表名 rename 新表名;    改表名

数据的基本操作

select * from 表名;    查看表中数据
insert into user values(1,'alex');    向表添加数据
insert into user values(1,'alex'),(2,'barry');    批量向表添加数据
insert into 表名(字段,字段) values(数据,数据);  向指定字段添加数据
insert into 表名(字段,字段) select(数据,数据) from 表2;  向指定字段添加表2指定数据 update user set name
= 'barry'; 把表中name的数据都改为barry,不推荐 update user set name = 'McGrady' where id = 1; 把表中id为1的数据的name改为McGrady update user set name = 'Messi',id = 10 where id = 1; 把表中id为1的数据的name改为Messi,id改为10 delete from 表名; 清空表中数据,不使用 delete from 表名 where id = 3; 把id为3的数据删除
修改表
1. 修改表名 ALTER TABLE 表名 RENAME 新表名; 2. 增加字段 ALTER TABLE 表名 ADD 字段名 数据类型 [完整性约束条件…], ADD 字段名 数据类型 [完整性约束条件…]; 3. 删除字段 ALTER TABLE 表名 DROP 字段名; 4. 修改字段 ALTER TABLE 表名 MODIFY 字段名 数据类型 [完整性约束条件…]; ALTER TABLE 表名 CHANGE 旧字段名 新字段名 旧数据类型 [完整性约束条件…]; ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型 [完整性约束条件…]; 5.修改字段排列顺序/在增加的时候指定字段位置 ALTER TABLE 表名 ADD 字段名 数据类型 [完整性约束条件…] FIRST; ALTER TABLE 表名 ADD 字段名 数据类型 [完整性约束条件…] AFTER 字段名; ALTER TABLE 表名 CHANGE 字段名 旧字段名 新字段名 新数据类型 [完整性约束条件…] FIRST; ALTER TABLE 表名 MODIFY 字段名 数据类型 [完整性约束条件…] AFTER 字段名;
原文地址:https://www.cnblogs.com/biulo/p/11266564.html