5.3python笔记

MySQL的下载与基础知识

数据库分类

#关系型数据库
	特点:
         有固定的表结构(最主要的特征)
         表与表之间可以建立代码层面的关系
     常见数据库名称:
    	MySQL	Oracle	PostgreSQL	MariaDB	sqlite	sql	server

#非关系型数据库
	特点:
    	没有固定的表结构,数据存取采用K:V键值对的形式(最主要的特征)
        表与表之间无法建立代码层面的关系
    常见数据库名称:
    	Redis	MongoDB	Memcache

SQL与NoSQL

数据库服务端支持多客户端链接使用,数据库自带的客户端、python代码编写的,java代码编写的...那么如何让服务端兼容诸多客户端从而实现正常交互呢?
	方式1:让服务端识别并自动切换对应语言
    方式2:统一沟通标准
    
相较之下方式2更加合理>>>即SQL语句与NoSQL语句
	#SQL语句:与关系型数据库交互的语言
    #NoSQL语句:与非关系型数据库交互的语言
 SQL有时候用来表示关系型数据库,有时候表示SQL语句;NoSQL有时候用来表示非关系型数据库,有时候表示NoSQL语句

MySQL简介及下载与安装

#下载使用
	https://www.mysql.com/
#下载步骤
downloads
(GPL) Downloads
MySQL Community Server
Archives
选择版本和系统(以5.6.44为例)
点击下载对应的zip压缩包即可

# 解压处理
解压至除C盘以外的盘符,根目录以便查找
mysql-5.6.44-winx64.zip  >>>  mysql-5.6.44-winx64

# 目录结构
bin文件夹
  >>  mysqld.exe		 服务端
  >>  mysql.exe		     客户端
'''学习阶段服务端在本地启动即可'''
data文件夹       		   存放数据
my-default.ini文件        默认配置文件
README文件                说明书

基本使用

以D:\mysql-5.6.44-winx64为例

1.以管理员身份运行cmd
	切换到bin路径下
  	D:
    cd mysql-5.6.44-winx64\bin
2.启动服务端 
	mysqld
# 维持cmd窗口不要关闭 重新打开一个新的cmd窗口
3.启动客户端链接服务端
	先切换到bin路径下 
  	D:
    cd mysql-5.6.44-winx64\bin
# 然后直接输入mysql即可登录服务端
注意:可以把bin路径直接添加到环境变量,然后直接输入mysqld即可启动服务端,输入mysql启动客户端
  '''不带用户名和密码 是游客模式(只能体验基本功能)'''
# 报错情况:启动服务端的时候 有些同学的电脑可能会报错
解决策略:
	拷贝报错信息,百度搜索>>>mysql启动报错+错误代码
    eg:一般情况下是系统C盘下的windows文件下system32文件夹下缺失或者需要更换一些文件,如msvcr100.dll,msvcp100.dll

MySQL系统服务制作

#1.添加环境变量
#2.设置服务端开机自启动
#3.修改密码:
	1.直接输入mysql登录:
	默认是游客模式,没有太多操作的权限
    """
    如何区分当前是否是游客模式?
        登陆后可以执行show database;
            结果如果是两条 表示是游客
            结果如果是四条及以上 表示是用户
    """
    2.使用用户名和密码的方式登录
        mysql -u用户名 -p密码
        # 学习阶段暂不考虑用户管理,直接使用root用户(管理员账号)
        mysql -uroot -p  # 直接回车,先不输入密码,可以密码输入
        Enter password: ********
    3.修改管理员密码
    (1)在cmd窗口下直接修改(不要登录进去)
        mysqladmin -u用户名 -p原密码 password 新密码
        eg:mysqladmin -uroot -padmin123 password jason123
        # Warning: Using a password on the command line interface can be insecure.提示在命令行界面上使用密码可能不安全
        '''第一次无密码修改 -p后面不写即可'''
    (2)登录状态下修改当前用户密码(初次登录或者已密码登录)
        set password = PASSWORD('新密码');  # 最新版不支持
        eg:set password = PASSWORD('jason123')

重要概念

库				类似于>>>				文件夹

表				类似于>>>				文件

记录			    类似于>>>			    文件中一行行数据
"""
show databases;		查看所有的库名称
	类似于查看data文件夹内文件夹的名称
"""
# SQL语句使用分号作为结束符

基本SQL语句操作

# 查
	show databases;  # 查看所有的库名称
    show create database 库名  # 指定查看某个库的信息
    
# 增
	create database 库名;  # 创建新的库
    
# 改
	alter database 库名 charset='utf8';  # 修改库的字符编码
    
# 删
	drop database 库名;
    '''进入公司 每个账号都会有权限管理 不可能轻易做到'''
    
# 切换到指定库
	use 库名;

操作表的基本SQL语句

表是存放于库下面的,所以操作表之前,应该先确定库如何查看当前在哪个库下:
select database();
	结果如果是null则表示当前没有切换到任何库下
切换到指定库:
	use 库名;
# 查
	show tables  # 查看当前库下所有的表名称
    show create table 表名;  # 指定查看某个表的信息
    describe 表名;  # 指定查看表的详细信息,简写:desc 表名;
    
# 增
	create table 表名(字段名称1 字段类型2,字段名称2 字段类型2);
    
# 改
	alter table 表名 rename 新表名;  # 修改表名
    
# 删
	drop table 表名;  # 指定删除某表

操作记录的基本SQL语句

# 查
	select * from 表名;  # 查看表里面的所有数据
    select * from 库名.表名;  # 查看指定库下面的指定表的所有数据
    
    select * from 表名\G;  # 逐行展示表的信息
    
    select Host,User from mysql.user  # 查看指定字段
    
# 增
	insert into 表名 values(值1,值2);  # 增加单条数据
    insert into 表名 values(值1,值2),(值3,值4);  # 增加多条数据
    
# 改
	update 表名 set 字段=新值 where 筛选条件;
    eg: update t1 set name='jason' where id=1;  # 将id是1的数据中name字段对应的值改成jason
        
# 删
	delete from 表名 where 筛选条件;
    eg: delete from t1 where id=3;
    # 如果不加筛选条件就是删除所有的数据
    delete from t1;
posted @ 2022-05-29 23:31  槐序八  阅读(35)  评论(0)    收藏  举报