• mysql数据库中的插入数据insert,中文字符集配置


    目录

    关键字insert

    常见错误类型

    指定一列插入数据

    多列同时插入

    插入效率问题

    全列查询select *

     查看数据库字符集类型:

    更改数据库字符集

     


    • C:create 新增
    • D:update 修改
    • R:retrieve 查询
    • D:delete 删除

    进行增删查改,必须先选中数据库 

    关键字insert

    SQL 使用 insert 关键字来表示新增数据

    每次新增都是直接新增一行(一条记录)

    insert into 表名 value(列,列.....);

             注意:value后面的()中的内容个数、类型必须和表的结构匹配

     在SQL中,‘’(单引号)和“”(双引号)都可以表示字符串,因为SQL没有字符类型,只有字符串类型,这种编程语言对单双引号要求不高

    常见错误类型

    1、列数不匹配

     2、列的类型不匹配

     可以存中文字符的数据吗?

    指定一列插入数据

     insert除了可以插入完整的一行数据之外。还可以指定哪列插入

    此时,未被指定的列,则是默认值来进行填充

     

     指定一个列:(列名)

     指定多个列(用逗号,分隔)

    多列同时插入

     一次性插入多个行——一个sql插入多条数据

    实现方法:insert 语句values后面跟多个()

    每一组括号对应一行(一条记录)

    插入效率问题

     在mysql中,一次插入1条数据,插10次一次性插入10条效率低

    1.  因为insert是通过网络访问的,发送请求返回网络响应都是要时间的
    2. 数据库服务器是把数据保存在硬盘上的(硬盘读取要时间)
    3. mysql关系型数据库每次进行sql操作,内部都会开启一个事务(开启事务也是要时间开销的)

    全列查询select *

    select是sql中最复杂的操作(变化多)

    1、全列查询——查询表里的所有列

    select * from 表名;

    *是通配符,代表所有列

     工作中select操作非常危险,select *数据量非常大

    • 数据从硬盘出来,通过网卡发送,数据量一大就会把硬盘IO吃满网络带宽吃满,(工作无法正常进行)

    服务器的硬件资源是有限的,把某个资源吃满,容易导致程序出现严重问题

     查看数据库字符集类型

    show variables like '%character%';

            创建数据库时,如果手动指定过字符集,就以手动的为准,没有手动指定,就会读取mysql的配置文件my.ini里的默认字符集。默认字符集是拉丁文,不支持中文。

    更改数据库字符集

    1、删除之前的库,重新建一个指定utf-8字符集的数据库。(一定要删除数据库,妄想中途改变字符集,继续使用)

    2、找到自己文件目录下mysql中的my.ini

    3、打开my.ini记事本,找到[mysql]节点,

    找到default-character-set,改成default-character-set=utf8

    如果是#default-character-set=utf8,把#删除(前面有#号表示注释,需要删除#)

    最后保证下面的样子:

     

    4、ctrl+s保存

    5、重启mysql(让服务器重新加载配置文件)

     

     

     6、查看

     7、使用

     

  • 相关阅读:
    代码随想录 动态规划 14
    MySQL 中常见的几种高可用架构部署方案
    初识Cpp之 一、基础知识
    ⑦、企业快速开发平台Spring Cloud之HTML 图像
    做好了产品需求管理,PM就不用挨揍了吗?
    2022牛客多校联赛第八场 题解
    kali必杀器之三剑客
    【虹科干货】TWAMP:什么是双向主动测量协议?
    京东联盟flutter插件使用方法
    动态规划 DP 的一些笔记以及解题思路
  • 原文地址:https://blog.csdn.net/m0_65601072/article/details/127673456