MySql 到 SQL Server(MSSQL)

我用 MySql 2年了,一直都是 asp.net + MySql 开发

为什么不用 MSSQL呢?

原因 : 

在我的国家,几乎找不到任何一间托管公司有提供 SQL SERVER 的,有的话也是 2005 年的版本,不然就是非常高的价钱。

我觉得很奇怪,为什么美国的托管公司也是 asp + mssql 但是价钱却差那么远呢。

一直到近期的项目,这2个不同公司的产品兼容问题越来越大,所以呢,我决定放弃MySql了。

这次的导火线要从一个bug说起了.

https://bugs.mysql.com/bug.php?id=74918

https://bugs.mysql.com/bug.php?id=72058

http://bugs.mysql.com/bug.php?id=70722

目前我用的是 6.9.5的版本connector,有个bug,官网说 6.9.6 会fix , 那么我只好退用 6.9.4 , 因为这个bug是6.9.5才出现的。

怎么知道6.9.4也遇到了一个bug,说 6.9.5 会fix . 

这进退两难的情况让我非常火大。

常年以来 connector 是没什么问题,一直到我开始使用 Entity Framework 和 Web API. (所以如果你没有使用的话,还是挺好的)

MySql 还有一个困扰我的问题就是不支持 DateTimeOffset (这比DateTime好很多) , 还有 TimeSpan (rowVersion , 乐观并发长用到的)

 

替换的过程并不复杂。

1. web config 关于 mysql 的都可以去掉了.

2. mysql 的乐观并发是用 timespan + DateTime 完成的, mssql 是 timespan + byte

3. mssql datetimeoffset 支持在 insert 的时候又 sql 自动填入当前时间 , 这个在 mysql 也是不可以的 (5.6我不情况是否可以, 我用的是5.1)

4. mssql 的 last modified datetime 必须写 trigger 来完成 , mysql 只要用 timespan 就可以了 .

大至少就这样。

那么 mssql 和 mysql 的功能其实差不多,都是数据库吗,该有的都有。

不过引擎和优化就比较不同了(那天先 explain 看一下语句 结果..= ="),这个我一时也没法学,反正大都用 EF 生产语句,以后才研究吧。

 

我从前关于 MySql + asp.net 的文章,两者的区别我以后都会更新上去,如果你和我有同样的遭遇希望可以帮到你 ^^ 

 

posted @   兴杰  阅读(470)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 百万级群聊的设计实践
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
点击右上角即可分享
微信分享提示