博客
关于我
MySQL & Navicat(一)基础语法——常用数据类型、创建、删除、插入、更新、排序
阅读量:799 次
发布时间:2019-03-25

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

MySQL & MariaDB 参考手册


一、数据库管理

1. 创建数据库

在 MySQL 中创建新的数据库,可以通过以下命令执行:

CREATE DATABASE name;

如果数据库不存在,可以使用以下语句来创建默认字符集和排序规则:

CREATE DATABASE IF NOT EXISTS name DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

2. 删除数据库

删除数据库需要 root 管理员权限,操作会带来不可逆的后果:

DROP DATABASE name;

二、数据表管理

1. 创建数据表

创建数据表的基本语法如下:

CREATE TABLE name (col_name column_type, ...);

若要指定默认字符集,可以使用:

CREATE TABLE IF NOT EXISTS name (col_name column_type) DEFAULT CHARSET=utf8mb4;

2. 数据类型

数据库中常用的数据类型包括:

  • 数值类型

    • INT:4 字节的整型(默认为无符号)。
    • FLOAT:4 字节的单精度浮点型。
    • DOUBLE:8 字节的双精度浮点型。
  • 日期/时间类型

    • DATE:存储年月日(YYYY-MM-DD)。
    • TIME:存储小时、分钟、秒(HH:MM:SS)。
    • DATETIME:存储日期和时间(YYYY-MM-DD HH:MM:SS)。
  • 字符类型

    • CHAR(n):定长字符串,n 为字符数。
    • VARCHAR(n):变长字符串,n 为最大字符数。

3. 数据删除

删除数据表也需要谨慎操作:

DROP TABLE name;

三、数据操作

1. 插入数据

插入多行数据时,可以使用以下语法:

INSERT INTO table_name (col1, col2, ...) VALUES ('值1', '值2', ...), ('值3', '值4', ...);

字符值需用引号约束。


2. 选取数据

查询数据的基础语法:

SELECT * FROM table_name;

为了限定数据范围,可以使用 WHERE 子句:

SELECT * FROM table_name WHERE 条件语句;

查询结果可以按条件排序:

SELECT column_name FROM table_name ORDER BY column_name ASC/DESC;

3. 更新数据

更新特定行数据时,需使用 WHERE 子句指定条件:

UPDATE table_name SET col1 = '值', col2 = '值' WHERE 条件语句;

四、数据查询优化

为了提高查询效率,可以:

  • 使用 EXPLAIN 语句分析查询性能。
  • 优化索引。
  • 合理使用 WHERE 子句。

  • 五、日期和排序

    日期和时间存储需要遵守特定格式,排序时默认支持 ASC(升序)和 DESC(降序)。


    六、字符编码和排序规则

    MySQL 中的字符编码默认为 utf8mb4,排序规则默认为 utf8mb4_0900_ai_ci(区别大小写,不区分_case-sensitive_)。

    为了查看支持的排序规则,可以使用:

    SHOW COLLATION;

    定期事务处理

    在执行 UPDATEDELETE 操作时,建议启用安全模式:

    SET sql_safe_updates = 1;

    欢迎在评论区留言,与我一起探讨更多数据库操作相关的内容!

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

    你可能感兴趣的文章
    NIH发布包含10600张CT图像数据库 为AI算法测试铺路
    查看>>
    Nim游戏
    查看>>
    NIO ByteBuffer实现原理
    查看>>
    Nio ByteBuffer组件读写指针切换原理与常用方法
    查看>>
    NIO Selector实现原理
    查看>>
    nio 中channel和buffer的基本使用
    查看>>
    NIO基于UDP协议的网络编程
    查看>>
    NISP一级,NISP二级报考说明,零基础入门到精通,收藏这篇就够了
    查看>>
    Nitrux 3.8 发布!性能全面提升,带来非凡体验
    查看>>
    NI笔试——大数加法
    查看>>
    NLog 自定义字段 写入 oracle
    查看>>
    NLog类库使用探索——详解配置
    查看>>
    NLP 基于kashgari和BERT实现中文命名实体识别(NER)
    查看>>
    NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
    查看>>
    NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
    查看>>
    NLP学习笔记:使用 Python 进行NLTK
    查看>>
    NLP的神经网络训练的新模式
    查看>>
    NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
    查看>>
    NLP:使用 SciKit Learn 的文本矢量化方法
    查看>>
    Nmap扫描教程之Nmap基础知识
    查看>>