博客
关于我
MySQL _ MySQL常用操作
阅读量:794 次
发布时间:2023-02-10

本文共 2224 字,大约阅读时间需要 7 分钟。

MySQL | 常用操作

MySQL简介

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),主要使用结构化查询语言(SQL)进行数据库管理。其开源性质使得用户能够根据需求对数据库进行个性化修改。MySQL以高效性、可靠性和适应性著称,是内容管理的理想选择。

SQL相关操作

SQL操作简介

  • DDL(数据定义语言):用于定义数据库对象,包括数据库、表和列。
  • DML(数据操作语言):用于对数据库记录进行增、删、改操作。
  • DCL(数据控制语言):用于定义访问权限和安全级别。
  • DQL(数据查询语言):用于查询数据库记录,是SQL的核心部分。
  • DCL(数据控制语言)

    创建用户

    • 用户只能在指定IP地址上登录:
      create user knightzz01@127.0.0.1 identified by '123456';
    • 用户可在任意IP地址登录:
      create user knightzz01@'%' identified by '123456';
    • 新用户默认没有权限,需手动设置:
      grant all on knightzz01.* to knightzz01;

    授权用户

    • 给用户授权:
      grant all on knightzz01.* to knightzz01;
    • 撤销授权:
      revoke all on test.* from zn;
    • 查看授权:
      show grants for knightzz01;

    删除用户

    delete user knightzz01@127.0.0.1 identified by '123456';

    DDL(数据库操作语言)

    数据库操作

    • 查看所有数据库:
      show databases;
    • 使用数据库:
      use test;
    • 创建数据库(推荐指定编码,避免乱码):
      create database test default character set utf8;

    表结构操作

    • 创建表:

      create table student(  id int(11) primary key,  name varchar(10),  age int(10) not null,  gender varchar(2));
    • 查看表:

      show tables;
    • 删除表:

      drop table student;
    • 查看表结构:

      desc student;
    • 修改表(常用前缀:alter table

      • 添加列:
        alter table student add (address varchar(20), hobby varchar(20));
      • 修改列类型:
        alter table student modify hobby int;
      • 修改列名称及类型:
        alter table student change hobby newHobby varchar(15);
      • 删除列:
        alter table student drop newHobby;
      • 修改表名:
        alter table student rename to stu;

    DML(数据操作语言)

    插入数据

    • 插入一行数据:
      insert into stu (id, name, age, gender) values (2, '李华', 19, '男');

    修改记录

    • 根据条件修改:
      update stu set age=23, name='张楠' where id=1;
    • 常用运算符:
      • =!=<><=>=between...andin(())is nullnotorand

    删除数据

    • 删除整行记录:
      delete from stu where id=1;

    技术栈与开发

    数据类型

    日期与时间

    • 常用类型:datetimedatetime

    整型

    • 有符号/无符号整型:intint unsigned
    • 范围:tinyint(0-255)、smallint(-32767~32767)、mediumintintbigint
    • 无符号类型:tinyint unsigned(0-255)、decimal(精确小数)。

    浮点型

    • float(M,D):M为有效位数,D为小数位数。
      • 示例:float(5,3)存储小数点后3位,最大值为99.999。
      • 注意:插入值会自动截断或四舍五入。

    字符串

    • char(n)varchar(n)
      • char(n):固定长度n,存储n个字符。
      • varchar(n):可变长度,存储实际字符数+1字节。
      • 注意:varchar支持文本存储,不会截断空格。
    • text:大容量文本类型,无固定长度限制。

    其他类型

    • enum:枚举类型,最多包含65535个成员。
    • set:集合类型,最多包含64个成员。

    开发实践

    数据库设计建议

    • 定义明确的字段含义。
    • 使用primary keyunique约束。
    • 合理设置index,提高查询效率。
    • 定期备份数据库,确保数据安全。

    SQL优化技巧

    • 使用index提高查询速度。
    • 合理使用joinunion,避免全表扫描。
    • 使用group byhaving筛选数据。
    • 优化updatedelete语句,尽量减少全表扫描。

    安全建议

    • 定期更换默认密码。
    • 使用强密码策略。
    • 设置访问控制列表(ACL)。
    • 定期检查和修复数据库。

    通过以上操作,您可以熟练掌握MySQL的常用操作和数据库开发技巧。

    转载地址:http://pgffk.baihongyu.com/

    你可能感兴趣的文章
    mysql 将null转代为0
    查看>>
    mysql 常用
    查看>>
    MySQL 常用列类型
    查看>>
    mysql 常用命令
    查看>>
    Mysql 常见ALTER TABLE操作
    查看>>
    MySQL 常见的 9 种优化方法
    查看>>
    MySQL 常见的开放性问题
    查看>>
    Mysql 常见错误
    查看>>
    mysql 常见问题
    查看>>
    MYSQL 幻读(Phantom Problem)不可重复读
    查看>>
    mysql 往字段后面加字符串
    查看>>
    mysql 快照读 幻读_innodb当前读 与 快照读 and rr级别是否真正避免了幻读
    查看>>
    MySQL 快速创建千万级测试数据
    查看>>
    mysql 快速自增假数据, 新增假数据,mysql自增假数据
    查看>>
    MySQL 性能优化 & 分布式
    查看>>
    MySQL 性能优化的 9 种姿势,面试再也不怕了!
    查看>>
    MySql 手动执行主从备份
    查看>>
    Mysql 批量修改四种方式效率对比(一)
    查看>>
    mysql 批量插入
    查看>>
    Mysql 报错 Field 'id' doesn't have a default value
    查看>>