From 434c360d1b5302dc897ef62405433b75be1448d5 Mon Sep 17 00:00:00 2001 From: xingxing Date: Sun, 15 Dec 2024 19:49:40 +0800 Subject: [PATCH] zy --- ...\256\346\224\271\346\237\245\346\211\276.md" | 13 +++++++++++++ .../image.png" | Bin 37874 -> 0 bytes 2 files changed, 13 insertions(+) create mode 100644 "\351\231\210\346\230\237\346\234\210/20241210-\344\277\256\346\224\271\346\237\245\346\211\276.md" delete mode 100644 "\351\231\210\346\230\237\346\234\210/image.png" diff --git "a/\351\231\210\346\230\237\346\234\210/20241210-\344\277\256\346\224\271\346\237\245\346\211\276.md" "b/\351\231\210\346\230\237\346\234\210/20241210-\344\277\256\346\224\271\346\237\245\346\211\276.md" new file mode 100644 index 0000000..06bdb23 --- /dev/null +++ "b/\351\231\210\346\230\237\346\234\210/20241210-\344\277\256\346\224\271\346\237\245\346\211\276.md" @@ -0,0 +1,13 @@ +## 常见数据库 ++ Sqlserver 微软 商业 有免费版(限制) ++ Mysql/MariaDb 免费 也有商业版 ++ PostgreSQL 完全开源免费 许可宽松 ++ Oracle 商业数据库 贵 ++ 达梦 国产数据库 ++ 人大金仓 国产数据库 ++ sqllite 桌面数据库 ++ Redis 非关系型数据库 内存数据库 一般用于缓存 NoSQL ++ MongoDB 最像关系型数据库非关系型数据 NoSQL +## 常见ORM工具 (ORM工具其实就是在应用和数据库之间担任通讯员) ++ Dapper 写法麻烦,运行速度很快 ++ EntityFrameworkCore 写法简单,运行速度略慢 \ No newline at end of file diff --git "a/\351\231\210\346\230\237\346\234\210/image.png" "b/\351\231\210\346\230\237\346\234\210/image.png" deleted file mode 100644 index 67710540b9fc9a889181d482e6d613b79bab2437..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37874 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 -- Gitee