在EF6 之前的时代,如果需要从数据库中生成代码,是可以直接在界面上操作的,而到了EF Core的时代,操作方式又有更简便的方式了,我们只需要记住以下这条指令。
Scaffold-DbContext "Server=服务器地址;Database=数据库名;uid=用户名;pwd=密码" Microsoft.EntityFrameworkCore.SqlServer -OutputDir M...
What?
首先,说一下什么是EF Core中的Transaction
Transaction允许以原子方式处理多个数据库操作,如果事务已提交,则所有操作都应用于数据库,如果事务回滚,则没有任何操作应用于数据库。
所谓原子方式 是指对数据库的每一个操作是对立开来的,但是多个操作能合成一个整体(个人理解)。
当操作到某...
博客有些好些时间未更新了,这几个月的时间里,离开了实习的公司、大学毕了业、来了新公司、转了户口,有点忙,最近总算稍微闲下来了,打算重新拾起博客,坚持写下去。
言归正转,什么是SonarQube ?
SonarQube(曾用名Sonar(声纳))是一个优秀的开源代码分析系统管理系统,支持超过25+种编程语言,对...
CAP是什么?
CAP是由我们园子里的杨晓东大神开发出来的一套分布式事务的决绝方案,是.Net Core Community中的第一个千星项目(目前已经1656 Star),具有轻量级、易使用、高性能等特点。
https://github.com/dotnetcore/CAP
本博客主要针对易用性这一点,展开叙述,一起看看CAP如何结合EF Core和RabbitMQ带...
表结构:
CREATE TABLE test.testsort ( id int(11) NOT NULL AUTO_INCREMENT, uid int(11) DEFAULT 0 COMMENT '用户id', score decimal(10, 2) DEFAULT 0.00 COMMENT '分数', PRIMARY KEY (id))ENGINE = INNODBAUTO_INCREMENT = 1CHARACTER SET utf8COLLATE utf8_general_ciCOMMENT = '测试排...
MySQL时间戳与日期格式的相互转换,PHP时间戳与日期格式的相互转换
MySQL:
获取当前时间
SELECT NOW(); // 2018/10/11 14:22:51
时间日期格式转换成时间戳格式,UNIX_TIMESTAMP()
SELECT UNIX_TIMESTAMP(NOW()); // 1539238930
时间戳格式转换成时间日期格式,FROM_UNIXTIME()
SELECT FROM_UNIXTI...
这里主要介绍一下 IPV4 / IPV6 在 PHP / MySQL 中如何转换。以及中间容易碰到的一些问题。
首先介绍两个函数:
ip2long:将 IPV4 的字符串互联网协议转换成长整型数字
int ip2long ( string $ip_address )
long2ip:将长整型转化为字符串形式带点的互联网标准格式地址(IPV4)
string long2ip ( int $pr...
前段时间看了《高性能MySQL》中的选择优化的数据类型,这里主要是做一下笔记。
首先数据选择有几个简单原则:
更小的通常更好。一般情况下,应该尽量使用可以正确存储数据的最小数据类型。例如只需要存 0~200,tinyint unsigned 更好。更小的数据类型通常更快,因为它们占用更少的磁盘、内存和 CPU ...
索引是存储引擎用于快速找到记录的一种数据结构。索引优化应该是对查询性能优化最有效的手段了。索引能够轻易将查询性能提高几个数量级,"最优"的索引有时比一个"好的"索引性能要好两个数量级。
索引可以包含一个(单列索引)或多个列(组合索引)的值。
想要使用组合索引首先要了解一个原则:最左前缀原则。...
问题:
我们经常会使用到分页操作,这里有个问题,在偏移量非常大的时候,它会导致MySQL扫描大量不需要的行然后再抛弃掉。如:
SELECT id, name FROM A ORDER BY id DESC LIMIT 10000, 20;
上述这条SQL语句需要查询10020条记录然后只返回最后20条。前面的10000条记录都将被抛弃,这样代价非常高。
...