zoukankan      html  css  js  c++  java
  • mysql安装及增删改查操作---day35

    # ### mysql
    '''
    命令可以用tab来补全
    d:
    D:>cd MySQL5.7
    D:>cd D:MySQL5.7mysql-5.7.25-winx64in 直接切换到对应的路径
    D:>dir 来查看文件夹里面的内容
    '''
    cls 清屏(winodw)  ctrl+l 清屏(linux)
    ctrl + c 终止
    
    [windows] 在超级管理员权限下才能使用:
    net start mysql  启动mysql
    net stop mysql  停止mysql
    
    [linux]
    service mysql start  启动mysql
    service mysql stop   停止mysql
    service mysql restart重启mysql
    
    # ### part1
    登录完整语法:
        mysql -u用户名 -p密码 -h地址ip
    
    #(1)登录到本地mysql 默认用户root 是最高权限用户
    mysql -uroot -p
    localhost => 127.0.0.1 本地Ip地址
    #(2)退出mysql
    q 或者 exit
    #(3) 远程连接mysql 服务器
    mysql -uroot -p -h192.168.65.130
    
    
    # ### part2
    #查询当前登录的用户的谁
    select user();
    #设置密码
    set password = password("123456");
    #去除密码
    set password = password("");
    
    # ### part3
    ipconfig windows | ifconfig linux
    #windows连接远程linux中的mysql
    create user "ceshi100"@"192.168.65.1" identified by "333";
    #给具体某个网段下的所有ip设置账户 % 代表任意的数据 0-255
    create user "ceshi11"@"192.168.111.%" identified by "111"
    #所有的ip都可以登录 % 任意所有ip
    create user "ceshi12"@"%" identified by "111"
    
    '''USAGE 没有任何权限'''
    mysql> show grants for "ceshi12"@"%";
    Grants for ceshi12@%
    Grant USAGE ON *.* TO "ceshi12"@"%"
    
    grant 权限 on 数据库.表名 to "用户名"%"ip地址" identified by "密码"
    '''
    #主要权限
    select 查询数据库的权限
    insert 插入数据库的权限
    update 更新数据库的权限
    delete 删除数据库的权限
    * 代表所有
    '''
    grant select on *.* to "ceshi12"@"%" identified by "222";
    #all 代表所有权限
    grant all on *.* to "ceshi12"@"%" identified by "333";
    #查看所有数据库
    show databases;
    #移除权限
    revoke all on *.* from "ceshi12"@"%";
    #删除账户
    drop user "ceshi12"@"%";
    #刷新权限,立刻生效
    flush privileges
    
    # ### part4 
    #(1) 操作数据库文件夹
    #创建数据库
        create database db0616 charset utf8;
    查
        #查看所有数据库
        show databases;
        #查看数据库的建表语句
        show create database db0616;
    改
        # alter 更改数据库的字符集
        alter datebase db0616 charset gbk;
    删
        # 删除数据库db0616
        drop database db0616;
    
    #(2) 操作[数据库](文件)
    选择数据库
        use 数据库名
    增
        #int 整型 char 字符
        #字段名1 类型1,字段名2 类型2....
        create table t1(id int,name char);
    查
        #查询所有数据表
        show tables;
        #查看表的建表语句
        show create table t1G; #(加上G 垂直显示,默认横向显示)
        #查看表结构
        desc t1;
    改
        #modify  只能改变数据类型
        alter table t1 modify name char(5);
        #drop 删除字段 column列(字段,关键字)
        alter table t1 drop column age;
        #rename 更改表名
        alter table t1 rename t1_1;
    删
        #删除表t1
        drop table t1_1;
    
    #(3)操作记录(文件里面的数据)
    '''mysql null 相当于 python None 是一样的 代表空的 什么也没有'''#一次插入一条数据
        '''insert into 表名(字段1,字段2...)values(值1,值2...)'''
        insert into t1(id,name) values(1,"liuwei1")
        #一次插入多条数据
        insert into t1(id,name) values(2,"liuwei2"),(3,"liuwei3"),(4,"liuwei4");
        #不指定具体字段,默认把所有字段
        insert into t1 values(5,"liuwei5");
        #可以具体指定某个字段进行插入
        insert into t1(name) values("liuwei6");
    
    查
        #*代表所有
        select * from t1;
        #把要搜索的字段写在select 后面
        select id,name from t1;
    
    改
        #update 表名 set 字段=值 where 条件
        update t1 set name = "刘伟" where id = 1;
        #如果不加条件,所有的数据都会被改掉
        update t1 set name = '刘伟';
    
    删
        #删除id为2的这条数据
        delete from t1 where id =2;
        delete from t1;
        
        #重置数据表(重置id)  相当于删除
        truncate table t1;
    
    
    # ### part5 常用数据类型
    #整型
    tinyint 1个字节 有符号(-128~127) 无符号(unsigned)(0~255) 小整型值
    int     4个字节 有符号(-21亿~21亿 左右) 无符号(0~42亿左右) 大整型值
        create table t1(id int,sex tinyint);
        insert into t1 values(4000000000,127); error
        insert into t1 values(2000000000,127)
    
    #浮点型
    float(255,30) 单精度
    double(255,30)双精度
    decimal(65,30)金钱类型,使用字符串的形式保存小数
    
        '''存在四舍五入'''
        create table t2(f1 float(5,2),f2 double(5,2),f3 decimal(5,2));
        insert into t2 values(1.666666666666666666666666666,1.666666666666666666666666666,1.666666666666666666666666666)
        
        '''float 小数位默认保留5位,double小数位默认保留16位,decimal 默认保留整数位 存在四舍五入'''
        create table t3(f1 float,f2 double,f3 decimal);
        insert into t3 values(1.666666666666666666666666666,1.666666666666666666666666666,1.666666666666666666666666666)
    
        '''float(5,2) 5=>代表总长度(整数+小数) 2>小数长度,保留2位'''
        create table t6(f1 float(5,2));
        insert into t4 values(12.23456);
        insert into t5 values(1234.34567);
    
    #字符串 char(字符长度) varchar(字符串) text
    char(11)  定长:固定开辟11个字符长度的空间(手机号,身份证号),开辟空间的速度上说:char更快
    varchar(11) 变长:最多创建字符长度为11的空间(小广告,评论)开辟空间的速度上说:相较于char稍慢
    text        文本类型,针对文章,小说
        
        create table t7(c char(11),v varchar(11),t text);
        insert into t7 values("11111","圣战套祖玛套大保健你你","倚天屠龙宝刀,掉率0.00001");
        select concat(c,':',v,":",t) from t7;
    
    #mysql
    select user() #查看当前用户
    #concat 拼接
    select concat(参数1,参数2,参数3....) 把所有的参数拼接在一起
    
    #枚举 和 集合
        enum 枚举:从列出来的数据当中选一个(性别)
        set  集合:从列出来的数据选多个(自动去重)
        
        create table t2(
        id int,
        name char(10),
        money float(6,2),
        sex enum("man","woman"),
        hobby set("play","smoke","drink","game")
        )
        
        #正常写法
        insert into t2(id,name,money,sex,hobby) values(1,"小白",9.777,"woman","smoke,game");
        
        #自动去重
        insert into t2(id,name,money,sex,hobby) values(1,"小白",9.777,"woman","smoke,somke,smoke");
  • 相关阅读:
    Java实现第八届蓝桥杯字母组串
    Java实现第八届蓝桥杯正则问题
    Java实现第八届蓝桥杯方格分割
    Java实现第八届蓝桥杯方格分割
    经典SQL语句大全(绝对的经典)
    SQL脚本
    非常有用的sql脚本
    代码生成器实现的Entity,Dao,Service,Controller,JSP神器(含代码附件)
    搭建MySQL高可用负载均衡集群
    MySQL——修改root密码的4种方法(以windows为例)
  • 原文地址:https://www.cnblogs.com/weiweivip666/p/13150279.html
Copyright © 2011-2022 走看看