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(数值):不定长的字符串格式,即存入的是多长的字符就会实际存入多长的字符,但是在这里需要注意一点,对于此种不定长的字符格式,需要一个字符来说明存入的字符的长度,最后存入的格式为: 数据长度说明字符+ 实际字符数据。虽然这种格式节省空间,但是存取的效率很低,建议少用。
MySQL中需要注意的几点的更多相关文章
- 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出同一表中的某些值 ...
- MySql中in和exists效率
mysql中的in语句是把外表和内表作hash 连接,而exists语句是对外表作loop循环,每次loop循环再对内表进行查询.一直大家都认为exists比in语句的效率要高,这种说法其实是不准确的 ...
- [原创]MYSQL中利用外键实现级联删除和更新
MySQL中利用外键实现级联删除.更新 MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在创建索引的时候,可以指定 ...
- mysql中的多行查询结果合并成一个
SELECT GROUP_CONCAT(md.data1) FROM DATA md,contacts cc WHERE md.conskey=cc.id AND md.mimetype_id= 5 ...
- 【转】MySql中的函数
原文:http://www.cnblogs.com/kissdodog/p/4168721.html MySQL数据库提供了很多函数包括: 数学函数: 字符串函数: 日期和时间函数: 条件判断函数: ...
- sqlserver 中数据导入到mysql中的方法以及注意事项
数据导入从sql server 到mysql (将数据以文本格式从sqlserver中导出,注意编码格式,再将文本文件导入mysql中): 1.若从slqserver中导出的表中不包含中文采用: bc ...
- MySQL中有关TIMESTAMP和DATETIME的总结
一.MySQL中如何表示当前时间? 其实,表达方式还是蛮多的,汇总如下: CURRENT_TIMESTAMP CURRENT_TIMESTAMP() NOW() LOCALTIME LOCALTIME ...
- MySQL中索引和优化的用法总结
1.什么是数据库中的索引?索引有什么作用? 引入索引的目的是为了加快查询速度.如果数据量很大,大的查询要从硬盘加载数据到内存当中. 2.InnoDB中的索引原理是怎么样的? InnoDB是Mysql的 ...
- B-Tree索引在sqlserver和mysql中的应用
在谈论数据库性能优化的时候,通常都会提到“索引”,但很多人其实并没有真正理解索引,也没有搞清楚索引为什么就能加快检索速度,以至于在实践中并不能很好的应用索引.事实上,索引是一种廉价而且十分有效的优化手 ...
- MySQL中CURRENT_TIMESTAMP(转)
1. MySQL 获得当前时间戳函数:current_timestamp, current_timestamp() 代码如下 mysql> select current_timestamp ...
随机推荐
- Codeforces 677C. Coloring Trees dp
C. Coloring Trees time limit per test:2 seconds memory limit per test:256 megabytes input:standard i ...
- Zookeeper 系列(四)ZKClient API
Zookeeper 系列(四)ZKClient API 环境准备: <dependency> <groupId>com.101tec</groupId> <a ...
- div 自适应宽度
div 自适应宽度 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...
- Linux应用开发入门(转)
今天偶然看到这篇文章,做个入门了解还是不错的. 前一阵子在QQ上和朋友聊天的时候,总会看到有人说Linux上的应用程序开发是高手才可以完成的,而且这种“迷信”在目前似乎还很普遍.然而,情况并不是这样的 ...
- 说说wee sing(ZZ)
我自己在当当上买过wee sing,也在网上下了wee sing 的DVD,也借过同事在淘宝上买的Wee sing 套装(9cd + 5DVD).所以对这套资料还是很熟悉的. 淘宝上的套装卖 ...
- Oracle 输出树形结构
Oracle 输出树形结构 树形结构,根 select connect_by_root(cat.parentid) root,cat.id,cat.parentid,cat.name,cat.code ...
- 有趣的NaN类型
在学习Java集合的时候遇到了Float.isNaN(float)函数,点进去一看就不理解了,函数实现如下: public static boolean isNaN(float v) { return ...
- 【转】ORACLE 表空间扩展方法
转载地址:http://blog.itpub.net/28950170/viewspace-763139/ 第一步:查看表空间的名字及文件所在位置: select tablespace_name, f ...
- JAVA开发常用计算机命令
系统常用命令 win+r > control (可进入控制面板,管理工具,服务) win+r > cmd > systeminfo (x86-based 指32位系统,x86-64 ...
- 解码Base64,并保存图片至本地
五一去了具有诗情画意的城市---杭州,今天是假期结束后回来上班的第一天,玩饱之后回来,确实精神抖擞了不少; 前段时间开发了有关电子签名的需求,其中有个关于解码Base64图片的知识点,值得关注一下; ...