在MacOS上安装和初始化Dapr

编码者

Dapr Overview

Dapr全称是:Distributed Application Runtime

Dapr is an open source, portable, event-driven runtime that makes it easy for any developer to build resilient, microservice stateless and stateful applications that run on the cloud and edge. Dapr embraces the diversity of languages and developer frameworks and simplified building application block.

MySQL 全文检索(Full-Text Search)

编码者

全文检索FTS不同于模糊查询like,它可以匹配局部的查询条件,即把原查询条件做下分词再去查询。

比如查询条件是:food fruit,全文检索可以做到返回 包含 food fruitfood, fruit, fruit food的结果集。

不仅如此,MySQL通过Boolean FTS还可以做到查询结果包含 food 但不包含 fruit

MySQL 触发器(Triggers)

编码者

在MySQL中,触发器(trigger)是一段绑定于table上的sql程序(stored program),这段程序在对表(db table)进行数据操作(insert, update, delete)时候触发并自动执行。

标准SQL定义了两种trigger类型:

  • row level trigger
  • statement level trigger

MySQL仅支持 row level trigger。

MySQL InnoDB 索引(Index)

编码者

MySQL使用索引加快数据的查询,没有索引的话,在查找数据的时候,MySQL会全表扫描。

数据越多,扫描的速度就会越慢。

InnoDB存储引擎是MySQL默认的存储引擎,本文整理的是InnoDBIndex

Mac OS上使用VS Code开发.NET应用程序

编码者

为什么不用宇宙第一的IDE:Visual Studio开发.NET应用程序呢?

因为我的系统不是windows;虽说有VS for MAC,尝试过几次后,还是放弃了。 VS + Windows 才能是宇宙第一IDE。

条件不允许,就用用VS Code这个宇宙第二的IDE了;用着用着觉得还挺爽。

我的书单

编码者

我有一份书单,十多年前就被我写在某个地方;

十年间,这份书单反复的被写在一些地方;

虽然历经沧桑,多了点装饰,但它仍是那个它!

我一直想到达那个心中的期望;

然而,却一直徘徊在边缘,未触及其内心;

瞧!

现在,我又在这个地方写它;

你说,这是为什呢?

MySQL 视图(View)

编码者

MySQL View 视图: 存储在数据库里的查询语句。

  • 简化逻辑并复用;
  • 增加了一层安全控制:view只暴露表里部分字段,view可以用专门的privilege控制;
  • 向后兼容:某一个db table要被淘汰调或替换掉,可以创建和表名一样的view,然后应用代码就可以不用改动。

MySQL String 字符串处理

编码者

字符串处理,在任何编程语言中,都是最重要的功能之一;因为在实际编程过程中,基本都会需要处理字符串;SQL也不例外。

处理字符串的关键知识点:

  • 使用语言提供的字符串函数;
  • 正则表达式。

MySQL 生成给定时间段内的年、月、日数据

编码者

后续会用SQL对书店的订单数据按天、月、年进行统计分析。 主要思路是通过定时任务来生成每天、月和年的统计数据,并存储到对应的summary表中。

在具体统计之前,先构建:天、月、年的维度(dimention)表,以便执行统计任务。

虚构书店数据库的dump脚本Github

操作系统环境为MacOS Catalina, MySQL版本为: 8.0.13 MySQL Community Server - GPL

MySQL Character Set和Collation

编码者

A character set is a set of symbols and encodings. A collation is a set of rules for comparing characters in a character set.

  • Character Set: 一套字符及其编码,即字符集;(文中很多地方也用 charset 一词)
  • Collation:在字符集内用于比较或排序字符的一套规则,即校验规则。

操作系统环境为MacOS Catalina, MySQL版本为: 8.0.13 MySQL Community Server - GPL

MySQL 创建MySQL数据库和表

编码者

虚构一个微型在线书店的数据库和数据,作为后续MySQL脚本的执行源,方便后续MySQL和SQL的练习。

在虚构这个库的过程中,主要涉及的是如何使用命令行管理 MySQL数据库对象:数据库、表、索引、外键等;另一个更为重要的是如何Mock对应表的数据。

虚构书店数据库的dump脚本Github

操作系统环境为MacOS Catalina, MySQL版本为: 8.0.13 MySQL Community Server - GPL

因.NET enum顺序引发的问题

编码者

前一段时间系统遇到一个很费解的问题,花了大半天的时间才找到原因。这个问题的场景稍微有点特殊,一般不容易碰到,因此也很容易被忽略。