几个常用的命令:

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

MySQL中需要注意的几点的更多相关文章

  1. MySQL中You can't specify target table for update in FROM clause一场

    mysql中You can't specify target table <tbl> for update in FROM clause错误的意思是说,不能先select出同一表中的某些值 ...

  2. MySql中in和exists效率

    mysql中的in语句是把外表和内表作hash 连接,而exists语句是对外表作loop循环,每次loop循环再对内表进行查询.一直大家都认为exists比in语句的效率要高,这种说法其实是不准确的 ...

  3. [原创]MYSQL中利用外键实现级联删除和更新

    MySQL中利用外键实现级联删除.更新 MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在创建索引的时候,可以指定 ...

  4. mysql中的多行查询结果合并成一个

    SELECT GROUP_CONCAT(md.data1) FROM DATA md,contacts cc WHERE md.conskey=cc.id AND md.mimetype_id= 5 ...

  5. 【转】MySql中的函数

    原文:http://www.cnblogs.com/kissdodog/p/4168721.html MySQL数据库提供了很多函数包括: 数学函数: 字符串函数: 日期和时间函数: 条件判断函数: ...

  6. sqlserver 中数据导入到mysql中的方法以及注意事项

    数据导入从sql server 到mysql (将数据以文本格式从sqlserver中导出,注意编码格式,再将文本文件导入mysql中): 1.若从slqserver中导出的表中不包含中文采用: bc ...

  7. MySQL中有关TIMESTAMP和DATETIME的总结

    一.MySQL中如何表示当前时间? 其实,表达方式还是蛮多的,汇总如下: CURRENT_TIMESTAMP CURRENT_TIMESTAMP() NOW() LOCALTIME LOCALTIME ...

  8. MySQL中索引和优化的用法总结

    1.什么是数据库中的索引?索引有什么作用? 引入索引的目的是为了加快查询速度.如果数据量很大,大的查询要从硬盘加载数据到内存当中. 2.InnoDB中的索引原理是怎么样的? InnoDB是Mysql的 ...

  9. B-Tree索引在sqlserver和mysql中的应用

    在谈论数据库性能优化的时候,通常都会提到“索引”,但很多人其实并没有真正理解索引,也没有搞清楚索引为什么就能加快检索速度,以至于在实践中并不能很好的应用索引.事实上,索引是一种廉价而且十分有效的优化手 ...

  10. MySQL中CURRENT_TIMESTAMP(转)

    1. MySQL 获得当前时间戳函数:current_timestamp, current_timestamp()  代码如下   mysql> select current_timestamp ...

随机推荐

  1. Scrum 项目1.0--软件工程

    1.确定选题 视频:http://v.youku.com/v_show/id_XMTU1OTExOTY2NA==.html 2.需求分析调查 地址:http://www.sojump.com/m/81 ...

  2. Strand Specific mRNA sequencing 之重要性与分析

    Strand Specific mRNA sequencing 之重要性与分析 发表评论 2,761 A+ 所属分类:Bioinformatics   收  藏 研究生物基因转录体的方法有许多种,而使 ...

  3. Jmeter 如何让变量中包含变量

    在运行Jmeter的过程中,有时候,我们可能会引用一个变量,而这个变量又是由另外一个变量组成的: 譬如我在脚本中要引用变量MappingData1,按照正常的情况,直接就是用${MappingData ...

  4. org.apache.commons札记

    StringUtils.isBlank(null); //trueStringUtils.isBlank(""); //trueStringUtils.isBlank(" ...

  5. 《Delphi XE6 android 编程入门教程》推荐

    近5.6年已经没有看见关于delphi的新技术的书出来了(看来在国内delphi的使用量确实很低了), 高勇同学最近出了一本<Delphi XE6 android 编程入门教程>,上周刚拿 ...

  6. 使用PrintWriter out=response.getWriter();输出script脚本时乱码解决

    使用PrintWriter out=response.getWriter();输出script脚本时乱码解决 最近遇到了一个奇怪的事情,仅仅用out.print("<script ty ...

  7. 2018.07.08 NOIP模拟 好数(线段树)

    好数 题目背景 SOURCE:NOIP2016-AHSDFZ T3 题目描述 我们定义一个非负整数是"好数",当且仅当它符合以下条件之一: 1. 这个数是 0 或 1 . 2. 所 ...

  8. Java synchronized关键字的理解

    转载自:http://blog.csdn.net/xiao__gui/article/details/8188833 在Java中,synchronized关键字是用来控制线程同步的,就是在多线程的环 ...

  9. vivado用法

    声明为”DEBUG”,即使没有连接到其他模块,也不会被优化掉.但并不是所有的信号都是在声明为“debug”属性之后就不会优化掉. (2)同一个bank中能设置一个电平. (3)

  10. MOD13A1: MODIS/Terra Vegetation Indices 16-Day L3 Global 500 m SIN Grid V006

    https://lpdaac.usgs.gov/node/838 Description The MOD13A1 Version 6 product provides a Vegetation Ind ...