数据库格式化时间戳

数据库格式化时间戳

$data = Db::name(‘user’)->field(‘*,FROM_UNIXTIME(create_time, “%Y-%m-%d %H:%i:%s”) AS dat’)->where([‘status’=>1])->select();
转载 | mysql source 导入文件

转载 | mysql source 导入文件

设置mysql的环境变量: [crayon-5d8552b2caafa336278390/] win+R 输入 cmd 进入dos 输入登录命令:mysql -u root -p 默认root密码为空 无需输入 [crayon-5d8552b2cab00279348268/] 输入显示数据库命令:show databases; 注:末尾加上; [crayon-5d8552b2cab04685641285/] 输入命令:use small_loan_supervision; [crayon-5d8552b2cab07958125933/] 输入导入文件命令:source d:\script\test.sql 注:无需加上; 如果文件名包含中文则可能导入不成功 [crayon-5d8552b2cab0a509499784/] Query OK, 0 rows affected (0.20 sec) 作者:Gent_Chen 来源:CSDN 原文:https://blog.csdn.net/java1230123/article/details/81099383 版权声明:本文为博主原创文章,转载请附上博文链接!
解决MySQL数据库导入提示

解决MySQL数据库导入提示”utf8mb4_unicode_520_ci”错误

今天导入数据库时出现的这个问题,一看就时字符集的不匹配 解决方法 将数据库中的所有"utf8mb4_unicode_520_ci"字符全部替换成"utf8mb4_unicode_ci",然后再导入这样就没有错误。   可以参考下面文章: 1、解决导入MySQL数据库提示"Unknown character set: 'utf8mb4'"错误 2、解决WordPress导入数据库"Unknown collation: 'utf8mb4_unicode_ci"错误
mysql学习笔记(进阶一)

mysql学习笔记(进阶一)

### 会话变量与全局变量 各客户端的session互不干扰 查看全部会话变量 show session variables; 查看单条 show session variables like 'auto%'; 更改会话变量 set 变量名 = '值' set @@session.变量名='值' 全局变量 全部 show global variables; 单条 show global variables like 'auto%' 更改 set global 变量名 = '值' set @@global.变量名='值' ### 存储过程 步骤: 1. 选择一个数据库 2. 改变分隔符(结束符) :delimiter $$; 3. 创建存储过程 create procedure p_hello() begin select "hello"; select "ddd"; end $$; 4. 执行存储过程 恢复结束符 delimiter ; 执行 call p_hello; 局部变量 定义:declare 变量名 数据类型 default 默认值 三参数: in输入参数 out输出参数 inout输入输出参数 [crayon-5d8552b2cae52254250103/] ###...
mysql学习笔记(基础)

mysql学习笔记(基础)

修改编码方式 ALERT DATABASE aaa DEFAULT CHARACTER SET=UTF8; 使用数据库 use aaa 查看当前数据库 select database() 删除数据库 drop database aaa in / not in select *from u where id in(1,2,4,5) like / not like select *from u where user like 'aa%' select *from u where user like '_aa%' select *from u where user like '___' (_表示一位) and / or group by select *from u group by pid (直接分组,只显示每个组的第一条数据) select *from u group by pid,aid (多字段分组) select id,sex,GROUP_CONCAT(username) from u group by sex (将username放到一起逗号隔开,)...
MySQL 中TEXT的使用

MySQL 中TEXT的使用

TINYTEXT 256 bytes TEXT 65,535 bytes ~64kb MEDIUMTEXT  16,777,215 bytes ~16MB LONGTEXT 4,294,967,295 bytes ~4GB   尽管text大约可以是64kb 可字段值大于65,535 bytes 远远的小于64kb,也是不可以的    
电商数据库设计及架构优化1(数据库开发规范)

电商数据库设计及架构优化1(数据库开发规范)

### 数据库规范 数据库命名规范 所有数据库对象名称必须使用**小写**并且用下划线分割 数据库名称禁止使用数据库关键字(关键字需要使用反向单引号区分) 数据库命名最好见名知意,最好不要超32字符 临时表以tmp为前缀,并以日期为后缀 备份表以bak为前缀,并以日期为后缀,方便识别 所有存储相同数据的列名和列类型必须一致 所有表最好使用Innodb存储引擎 支持事务,行级锁,更好的恢复性,高并发下性能好 数据库和表的字符集统一使用utf8 汉字占3字节,ascii码占1字节 所有表和字段都需要加注释 进行数据字典的维护 控制单表数据量大小,建议在500万行以内 可使用历史数据归档,分库分表进行 控制数据量大小 谨慎使用MySQL分区表 建议使用物理分表的方式管理大表 MySQL限制最多存储4096列 减少磁盘io 有效利用缓存,避免读入无用的冷数据 禁止在表中建立预留字段 预留字段难做到见名知意 预留字段的类型 禁止在数据库存储图片/文件等二进制数据 禁止在线上数据库进行压力测试 禁止从开发环境/测试环境直连生产环境数据库 ### 索引设计规范 1.限制每张表上索引的数量,建议每张表索引不超过5个 禁止给每一列都建立单独的索引 2.每个innodb表必须有一个主键 不使用UUID/md5/hash,字符串作为主键 主键是唯一非空的值 3.常见索引列的建议(在那些列上建立索引) 1.select/update/delete的where从句中的列建立 2.包含在order by / group by / distinct 中的字段 3.多表join的关联列 4.如何选择索引列的顺序 1.区分度最高的列放在联合索引的最左侧 2.尽量把字段长度小的列放在联合索引的最左侧 3.使用最频繁的列放在联合索引的最左侧 5.避免建立冗余索引和重复索引 6.对于频繁使用的查询优先考虑使用覆盖索引 例如:查询库存量 好处: 1.避免innodb表进行索引的二次查找 2.可以吧随机io变成顺序io,加快查询效率 7.尽量避免使用外键约束 ### 数据库字段设计规范 1.优先选择符合存储需要的最小的数据类型 1.1尽量把字符串转化为数字类存储 例: INET_ATON('255.255.255.255')=4294967195 INET_NTOA(4294967195)='255.255.255.255' 1.2对于非负型的数据,优先使用无符号整型 1.3varchar(N)中的n代表的是字符数,而不是字节数 使用utf8存储汉字varchar(255)=765字节,可存255个汉字 1.4避免使用text/blob数据类型 text/blob数据类型的只能使用前置索引,并且是没有默认值的 会进行二次查询 不在内存读取,而通过磁盘读取 1.5避免使用enum数据类型 修改enum值必须使用alter语句 enum类型的order by 操作效率低,需要额外的操作 禁止使用数值作为enum枚举值 1.6尽可能的把所有列定义为not null...