• MySQL中需要注意的几点


    几个常用的命令:

      select  database(); #查看当前所在的数据库。

      select  user();#查看当前登录的用户

      show global variables like "%datadir%";#查看数据库的物理存放位置

      show  create table  表名;#可以查看建立的索引的表结构

    可能会遗漏的知识点:

      在innodb存储引擎中,在一个表中必须有一个主键,当没有指定某一个字段为主键时,innodb会选择第一个不为空且唯一的字段作为主键。

      外键是innodb存储引擎所特有的特性,其他搜索引擎没有该特性,其实外键说白了就是Python中的组合。

      create table 表2 select 所需字段 from 表1;#拷贝表1结构+记录到表2中

      create table 表2 select 所需字段 from 表1 where 1=2;#只拷贝表1的结构到表2

      如何判断表的三种关系:

        首先先站在一个表的角度,思考该表的多个记录对象是否可以对应要连接表的一个对象,即是否是多----->一;其次,再站在另一个表的角度思考,是否该表的多个对象是否对应另一张表的一个对象,即是否多对一。若两次的多对一都成立,则两表的关系就是多对多。

        根据上面的两次比较,如果只有一个成立,则是一对多的关系。

        如果分别站在两张表思考后发现,只能是一张表的一个对象对应另一个表的一个对象,则是一对一的关系。(潜在用户表------->报名学员表)

      设置为主键后的字段会默认自带不为空,且唯一的约束条件。

      两种字符类型;

        char(数值):定长的字符串格式,字符的长度为0-255(一个汉字也为一个字符,使用utf-8编码时占用三个字节),对于所存入的字符的长度若小于char指定的数值,则会对存入的字符进行填充,使之达到char指定的数值长度。虽然浪费空间,但是存取的效率很高。

        varchar(数值):不定长的字符串格式,即存入的是多长的字符就会实际存入多长的字符,但是在这里需要注意一点,对于此种不定长的字符格式,需要一个字符来说明存入的字符的长度,最后存入的格式为: 数据长度说明字符+ 实际字符数据。虽然这种格式节省空间,但是存取的效率很低,建议少用。

  • 相关阅读:
    各种数据类型的取值范围(总结全)
    Help Johnny-(类似杭电acm3568题)
    ExtJs 设置GridPanel表格文本垂直居中
    批处理通过字符串截取得到文件名
    sql优化-提防错误关联
    Unix Domain Socket 域套接字实现
    solr源码分析之数据导入DataImporter追溯。
    spark初识
    Spark:一个高效的分布式计算系统--转
    Importing/Indexing database (MySQL or SQL Server) in Solr using Data Import Handler--转载
  • 原文地址:https://www.cnblogs.com/liuyinzhou/p/8044804.html
Copyright © 2020-2023  润新知