<数据库>MySQL的基本操作

本文详细介绍了MySQL数据库的用户及权限管理,包括创建、删除、修改用户,以及授权和撤销权限的方法。此外,还深入讲解了数据库和数据表的操作,如创建、删除、修改数据库和表,以及数据的插入、删除和查询等核心功能。
    1.用户管理
        创建用户:
            create user '用户名'@'IP地址' identified by '密码';(IP地址:%代表所有)
        用户登录:
            mysql -u 用户名 -p(enter之后输入密码)
            刚安装可能出现问题:无论怎么都没法登录新建的账户,提示如下:
            ERROR 1045 (28000): Access denied for user '123'@'localhost' (using password: YES)
            原因:mysql的认证规则导则,匿名用户影响新用户的认证
            解决办法:删除匿名用户'root'@'localhosr'和''@'localhost'
        删除用户:
            drop user '用户名'@'IP地址';
        修改用户名:
            update user set user='新用户名' where user='老用户名';
        修改密码:
            set password for '用户名'@'IP地址' = password('新密码');
            可能出现的问题:输入了修改的命令,但是一直提示:
            Can't find any matching row in the user table
            原因:没有及时更新权限(或用户名)
            解决办法:先输入命令:flush privileges;(刷新权限)

    2.权限管理
        查看权限:
            show grants for '用户名'@'IP地址';
        授权:
            grant 权限 on 数据库.表 to '用户名'@'IP地址';(all privileges除了grant以外的所有权限)
        取消权限:
            revoke 权限 on 数据库.表 from '用户名'@'IP地址';
        刷新权限:
            flush privileges;
            
    3.数据库操作
        创建数据库:
            create database 数据库名字 default charset utf8;
            (创建数据库X默认编码utf-8)
        删除数据库:
            drop database 数据库名字;
            (删除数据库X)
        修改数据库:
            没有这种操作,硬要写就是----先删除原来的,在创建新的数据库
        查询数据库:
            show databases;
            (显示所有数据库)
        使用数据库:
            use 数据库名字;

    4.数据表操作:
        创建表:
            create table 表名(
                列名 类型 是否为空 默认值,
                (例:name char(12) not null default libai,)
                列名 类型 是否为空  自增列,
                (例:ID int not null auto_increment primary key,)(一个表只有一个自增列,主键:约束(不重复,不为空),加速查找)
            )engine=innodb default charset=utf8;
                (引擎和编码格式)
        删除表:
            drop table 表名;
        清空表:
            delete from 表名;(自增列还是接着原来的)        
            truncate table 表名;(自增列从1开始)  
        修改表:
            修改表名:
                alter table 旧表名 rename 新表名;
            添加列:
                alter table 表名 add 列名 类型;
            删除列:
                alter table 表名 drop column 列名:
                (drop column:下拉列)
            修改列名:
                alter table 表名 change 原列名 新列名 新类型;
            添加主键:
                alter table 表名 add primary key(列名);
            删除主键:
                alter table 表名 drop primary key;
            添加外键:
                alter table 从表 add constraint foreign key 从表(外键字段) references 主表(主键字段);
            删除外键:
                alter table 表名 drop foreign key 外键名称;
            修改默认值:
                alter table 表名 alter column 列名 set default 新默认值;
            删除默认值:
                alter table 表名 alter column 列名 drop default;
        查询所有表名:
            show tables;

    5.数据表内容操作:
        插入数据:
            insert into 表名(列名1,列名2...) values(列值1,列值2...);
            insert into 表名(列名1,列名2) values(列值1,列值2),(列值1_1,列值2_1);#同时创建多个数据
            insert into 表名2(列名1,列名2) select 列名1,列名2 from 表名1;  #将表1的数据(列名1,列名2)插入表2
        删除数据:
            delete from 表名;
            delete from 表名 where 条件;
        修改数据:
            update 表名 set 列名=列值;
            update 表名 set 列名=列值 where 条件;
        查询数据:
            select * from 表名;
            select * from 表名 where 条件;
            select 列名1,列名2, from 表名 where 条件;
            
          

  

转载于:https://www.cnblogs.com/shuimohei/p/10259425.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值