关于mysql 的一些零碎.】的更多相关文章

/* 又在做自己以前做的事.总是拿以前的眼光来看现在,导致了其实自己已经很low,但是还觉得自己很xxx. 好吧,最近开始PHP审计.jishigou!!!!!! */ 查看日志情况. show variables like 'log_%'; 开启set global log_bin_trust_function_creators=1; //开启 windows: my.ini [mysql] log = file.log log_bin_trust_function_creators=1…
MySQL零碎积累 ■ 在给MySQL添加新用户时可以这么操作: create user 'newUser' identified by 'password'; grant all privileges on *.* to 'newUser'@'%'; flush privileges; newUser是用户名,password是密码,grant all指把从select到drop,delete等等各种关键字的权限都赋给这个用户,而这个用户可以作用的库和表是*.*(所有库中的所有表),@'%'表…
让Windows下的MySQL表名大小写敏感: 在mysql查询中执行:SHOW VARIABLES LIKE 'lower_case_table_names'; 值的含义--->0:大小写敏感:1:大小写不敏感 操作: 1.修改MySQL的“my.ini”文件,在文件最末新增一行:“lower_case_table_names=0” 2.重启MySQL服务即可生效. MySQL比较时间大小,如: where time1 between '2011-03-03 17:39:05' and '20…
聚合函数的用法: concat 连接单行记录的不同字段, group_concat 连接多行记录的相同字段, concat_ws count 按条件统计: SELECT COUNT(*) AS `num` GROUP BY `age` > 24  —— 可能需要建立临时表排序(没有对分组条件建立索引话),效率低 COUNT( CASE WHEN `age` >24 THEN 1 ELSE NULL END ) COUNT(if(pay_status=1, true, NULL)) SELECT…
一 视图 什么是视图:视图就是一张虚拟表.方便查看. 创建视图:create view 起名 as sql语句 #两张有关系的表 mysql> select * from course; +-----+--------+------------+ | cid | cname | teacher_id | +-----+--------+------------+ | | | | +-----+--------+------------+ rows in set (0.00 sec) mysql>…
一.MySQL中有个ifnull函数,跟Oracle的nvl类似,用法如下: select* from Ta t where ifnull(pro, 0) < 100; 解释:当pro是null的时候返回0,否则返回pro本身:通过这个方法可以用来给参数定义默认值 ,比如对于存储过程传来的参数如果是null则给它赋默认值-1: if(ifnull(param, -1) < 10) then ... elseif(...) then ... else ... end if; 二.创建函数: 在M…
数据完整性 实体完整性 实体: 表中一行(一行记录)代替一个实体 实体完整性的作用: 标识每一行数据不重复. 约束类型: 主键约束, 唯一约束,自动增长列. 主键约束: 标识该列唯一,非空. 注:  每个表中必须要有一个主键 添加主键的三中方式: 1.在创建表的过程中直接创建. CREATE TABLE student( id int primary key, name varchar(50) ); 2.  在创建表中的特殊创建方式:  优点在于  可以联合创建主键 CREATE TABLE s…
1.is null可以使用索引(网上很多文章存在误导,这个确实可以使用索引),is not null无法使用索引. 2.为什么重复数据较多的列不适合使用索引? 假如索引列TYPE有5个键值,如果有1万条数据,那么 WHERE TYPE = 1将访问表中的2000个数据块. 再加上访问索引块,一共要访问大于2000个的数据块. 如果全表扫描,假设10条数据一个数据块,那么只需访问1000个数据块,既然全表扫描访问的数据块少一些,肯定就不会利用索引了. 3.MySQL主要提供2种方式的索引:B-Tr…
MySql中的varchar类型 1.varchar类型的变化 MySQL数据库的varchar类型在4.1以下的版本中的最大长度限制为255,其数据范围可以是0~255或1~255根据不同版本数据库来定.在MySQL5.0以上的版本中,varchar数据类型的长度支持到了65535,也就是说可 以存放65532个字节的数据, 起始位和结束位占去了3个字节,也就是说,在4.1或以下版本中需要使用固定的TEXT或BLOB格式存放的数据可以使用可变长的varchar来存放,这样就能有效的减少数据库文…
[TOC] 在项目过程中遇到一个看似极为基础的问题,但是在深入思考后还是引出了不少问题,觉得有必要把这一学习过程进行记录. MySQL主键设计原则 MySQL主键应当是对用户没有意义的. MySQL主键应该是单列的,以便提高连接和筛选操作的效率 永远也不要更新MySQL主键 MySQL主键不应包含动态变化的数据,如时间戳.创建时间列.修改时间列等 MySQL主键应当有计算机自动生成. 主键设计的常用方案 自增ID 优点: 1.数据库自动编号,速度快,而且是增量增长,聚集型主键按顺序存放,对于检索…