zoukankan      html  css  js  c++  java
  • 1.初识数据库

    1.初识数据库

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

    用户名密码 商品名价格 对数据的处理更便捷

    web程序

    数据库 database db

    文件 表 table

    一条一条的数据 data

    2.数据库解决了:

    ​ 操作文件的效率和便捷问题

    ​ 解决了多个服务同时使用数据的一致性问题

    ​ 解决了安全的问题

    ​ 解决了并发问题

    3.数据库分类:
    关系型数据库 :存取效率相对低  数据与数据之间的关联紧密
    mysql oracle sqlserver sqllite accesse
    非关系型数据库 : 存取效率相对高  数据与数据之间的关联关系 kv,通过k找到v
    redis mongodb memcache(内存级别)
    

    mysql数据库管理系统 DBMS

    4.mysql的卸载和安装
    卸载
        net stop mysql 停止mysql服务
        mysqld remove  删除服务
        把安装软件也删掉
        删除环境变量
        清除注册表/重启计算机
    
    安装
        路径
            1.路径不能有中文
            2.路径中不能有特殊字符
        修改配置文件
            1.编码utf-8
            2.所有的配置项后面不要有特殊的符号
            3.修改两个路径basedir datadir
        检测文件的扩展名设置
            工具-->文件夹选项-->查看-->扩展名 不要隐藏
        配置环境变量
            在path中添加
                C:mysqlmysql-5.6.45-winx64in
        以管理员的身份重新打开一个cmd
            mysqld install 安装成功
        启动mysql
            net start mysql 启动mysql server
        在cmd启动mysql 客户端
            mysql
            客户端和本地的mysql server相连
    
    5.数据库的基本使用(操作)
    mysql server端
    	net start myspl 启动一个叫做mysql的服务
    	net stop mysql 停止一个服务
    myspl 启动了客户端,客户端会自动的连接本地的3306端口
    	mysql>select user()
    	mysql -uroot 表示要用root用户登录(root mysql里,最高权限)
    		默认密码是空
        set password = password('123');设置密码
        mysql -uroot -p 回车 使用密码登录
        	Enter password :123 登陆成功
        mysql -uroot -p123 回车 直接登陆成功(也可以这样登录,不建议这样使用,密码明文)
    

    创建账号

        	使用公司的数据库 管理员会创建一个账号给你用
            你的数据库 借给别人用也可以创建一个账号
    
            mysql>create user 'eva'@'192.168.13.%' identified by '123';
            mysql -ueva -p123 -h 192.168.13.254
    
            grant 权限的种类(增删改查)
            grant all
            grant select on 数据库.表 数据库里的一张表的查权限
            grant select on 数据库.* 数据库.* 数据库里面所有的.的查权限
            grant select on 数据库.* to 'eva'@'192.168.13.%';
                            给一个已经存在的eva账号授权
            grant select on 数据库.* to 'eva'@'192.168.13.%' identified by '123';
    
            mysql>select user();
    
    

    数据库的操作

    show

    查看有哪些数据库
    mysql>show databases;
    
    ftp项目
    create database ftp;
    
    切换到这个文件夹下面
    use 库名;
    use ftp
    
    use ftp;
    drop database ftp;删除库(一辈子不会用到,一定要慎用)
    
    
    6.表操作
    创建表
    create table userinfo(id int,name char(12)); # mysql 5.5以下都是字节,5.6以上都是字符 len
    
    查看当前库中有多少张表
    show tables;
    
    查看表的结构
    desc userinfo;
    describe userinfo;
    show create table userinfo;
    
    删除表
    drop table userinfo;
    
    修改表
    alter table 表名 rename 新名字;
    
    7.数据的操作
    查看
    select * from user;
    
    增加
    insert into user values(1,'alex');
    insert into user values(2,'wusir'),(3,'太亮');
    
    修改
    update user set name = 'barry';  # 不用
    update user set name = 'alex' where id = 1;#id 为1 的改成alex
    update user set name = 'alex',id = 2 where id = 1;#把id = 1的改成id =  2,name='alex'
    
    删除
    delete from user;  # 清空表 不用
    delete from user where name = 'alex';#通过名字删除
    delete from user where id = 3;#通过id删除
    
    8.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

    9.背诵与总结
    1.创建一个库day38
    create database day38;
    2.查看有哪些表
    use day38
    show tables;
    3.创建一个表
        create table staff(id int,name char(12), age int);
    4.往这个表中插入三条数据
        insert into staff values(1,'太亮',48),(2,'太亮',48),(3,'太亮',48);
    5.查看表结构
        desc staff;
    6.查询表中的所有数据
        select * from staff;
    7.常见的关系型数据库和非关系型数据库
        关系型   : mysql oracle sqlserver
        非关系型 : redis mongodb memcache
    

    总结

    数据库部分的概念
    数据库管理系统 DBMS 软件
    数据库 DB 文件夹
    表 table 文件
    数据 data 文件中的内容
    数据库管理员 DBA 人
    服务器 - 提供服务的机器
    数据库服务器
    
    关系型数据库    存取效率相对低  数据与数据之间的关联紧密
        mysql /oracle /sql server
    非关系型数据库  存取效率相对高  数据与数据之间的关联关系 kv,通过k找到v
        redis mongodb memcache
    
    sql 操作数据库的时候使用的语言
    
    sql语句的分类
        DDL : CREATE ALTER DROP            (****)
        DML : SELECT INSERT DELETE UPDATE  (*****)
        DCL : GRANT REVOKE                 (*)
    
    SQL语句
        库
            create database 库名;
            use 库名
            show tables;
        表
            create table 表名(字段名 类型(长度),...);
            desc 表名;
            show create table 表名;
            alter table 表名 rename 新表名;
            drop table 表名;
        数据
            insert into 表名 values (值1,值2,值3),(值1,值2..)....;
            delete from 表名 where 条件
            select * from 表 where 条件
            update 表名 set 字段名=新的值 where 条件
    
    
  • 相关阅读:
    【leetcode】1020. Partition Array Into Three Parts With Equal Sum
    【leetcode】572. Subtree of Another Tree
    【leetcode】123. Best Time to Buy and Sell Stock III
    【leetcode】309. Best Time to Buy and Sell Stock with Cooldown
    【leetcode】714. Best Time to Buy and Sell Stock with Transaction Fee
    【leetcode】467. Unique Substrings in Wraparound String
    【leetcode】823. Binary Trees With Factors
    【leetcode】143. Reorder List
    【leetcode】1014. Capacity To Ship Packages Within D Days
    【leetcode】1013. Pairs of Songs With Total Durations Divisible by 60
  • 原文地址:https://www.cnblogs.com/pythonblogs/p/11278966.html
Copyright © 2011-2022 走看看