数据库的初识与简单的SQL语句

数据库的初识与简单的SQL语句

1.初识数据库

1.1数据库中的数据在你的程序中扮演什么角色

​ 用户名密码,商品名价格等

1.2数据库解决了:

​ ①操作文件的效率和便捷问题
​ ②解决了多个服务同时使用数据的一致性问题
​ ③解决了安全的问题
​ ④解决了并发问题

1.3数据库分类:

​ 关系型数据库 : mysql,oracle,sqlserver,sqllite(轻量级),access

​ 非关系型数据库 : redis,mongodb,memcache(内存级别)

1.4数据库的粗浅概念

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

2.安装数据库

2.1卸载

​ ①net stop mysql 停止mysql服务(在管理员模式下打开命令行模式)
​ ②mysqld remove 删除服务(在管理员模式下打开命令行模式)
​ ③把安装软件也删掉
​ ④删除环境变量
​ ⑤清除注册表或重启计算机

2.2安装

2.2.1.路径

​ ①路径不能有中文
​ ②路径中不能有特殊字符

2.2.2修改配置文件

​ ①编码utf-8
​ ②所有的配置项后面不要有特殊的符号
​ ③修改两个路径basedir,datadir

2.2.2.1配置文件参考
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
#设置3306端口
port = 3306 
# 设置mysql的安装目录
basedir=C:\Program Files\mysql-5.6.39-winx64 
# 设置mysql数据库的数据的存放目录(即data文件夹的绝对目录)
datadir=C:\Program Files\mysql-5.6.39-winx64\data 
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

2.2.3检测文件的扩展名设置

​ 工具-->文件夹选项-->查看-->扩展名 不要隐藏

2.2.4配置环境变量

​ 在path中添加:
​ C:\mysql\mysql-5.6.45-winx64\bin (你的mysql中bin文件夹的绝对路径)

2.2.5以管理员的身份重新打开一个cmd(命令行模式)

​ 输入:mysqld install

2.2.6启动mysql(cmd模式下)

​ 输入:net start mysql,启动mysql server

​ 注:输入:net stop mysql,便可以停止服务

2.2.7在cmd启动mysql 客户端

​ mysql -u 用户名 -p 密码(这里可以不写,后面会进行密文型密码输入) -h 链接地址,

​ 客户端和本地的mysql server相连

3.初步使用一下数据库

3.1三种SQL语句类型

3.1.1DDL语句(数据库定义语言)

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

3.1.2DML语句(数据库操纵语言)

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

3.1.3DCL语句(数据库控制语言)

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

3.2更改root(最高权限)用户的密码

# mysql 启动了客户端,客户端会自动的连接本地的3306端口
# mysql -u root 表示要用root用户登陆
#        默认密码是空
# 设置密码:
    set password = password('123'); 
# mysql -u root -p 回车     使用密码登陆
#         Enter password :123(密文形式) 登陆成功
# mysql -u root -p123 回车 直接登陆成功

3.3创建账号

#进入mysql客户端
mysql> select user();  #查看当前用户
mysql> exit     # 也可以用\q quit退出

# 默认用户登陆之后并没有实际操作的权限
# 需要使用管理员root用户登陆
$ mysql -u root -p   # mysql5.6默认是没有密码的
# 遇到password直接按回车键
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 -u root -p 123 -h 192.168.10.3

# 给账号授权
# grant 权限的种类(增删改查,也可以all) on 数据库.数据表 to 用户名 @ 网段
mysql> grant all on *.* to 'eva'@'%';
mysql> flush privileges;    # 刷新使授权立即生效

# 创建账号并授权
mysql> grant all on *.* to 'eva'@'%' identified by '123';

3.4操作文件夹(库)

# 增:
    create database db1 charset utf8;
# 查:
    show databases;
# 改:
    alter database db1 charset utf8;
# 删除: 
    drop database db1;

3.5操作文件(表)

# 先切换到文件夹下:
    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;
# 表名重命名:
    # alter table 表名 rename 新名字;
    alter table t1 rename t2;

3.6操作文件中的内容(记录)

# 增:
    insert into t1 values(1, 'egon1'), (2, 'egon2'), (3, 'egon3');
    insert into class3 select * from class;
    insert into class3(id,name) select id,cname from class;
# 查:
    select * from t1;
# 改:
    # update 表名 set 字段名 = 更改值 where 条件
    update t1 set name = 'sb' where id = 2;
# 删:
    delete from t1 where id = 1;
# 清空表:
    delete from t1;  # 如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。
    truncate table t1; # 如果有自增id,新增的数据,从1开始*****。

3.7关于查看的SQL语句

# desc 表名;
desc t1; # 查看表结构
# show create table 表名;
show create table t1; # 查看表的详细信息
# 查看一共有多少库
show databases; 
# 查看当前所在的库
select database(); 
posted @ 2020-04-17 12:00  CoderI  阅读(171)  评论(0编辑  收藏  举报