msSQL与MySQL之间有什么区别

作者:港云互联 时间:2018-05-19
        msSQL与MySQL之间有些什么区别呢?那个更好用呢?



        就这两者之间的情况看,MySQL可以说是msSQL的简化版本,他们的理念也是相同的,但是MySQL的需求比msSQL的需求低。MySQL是一个免费的、开放源代码的SQL数据库,所以免费的MySQL比较受欢迎的,PHP+ MySQL,MySQL数据库专用于PHP网站的,一般用在PHP的网页上,它跟PHP是一个非常棒的组合,两者都是开源免费可以使用的。非常适合流量不大的中小型网站,效率比较高。MySQL是开源的数据库server,可以运行在Windows平台、Unix以及Linux平台,它的标准版都是免费的。asp.net不适合跟MySQL一起使用,目前在国内建站中使用比较多的是PHP+Apache+MySQL。



        msSQL是微软推出的商用数据库系统,它的全称为Microsoft SQL Sever,是属于微软的产品,我们一般清楚微软的产品基本上是收费的,相对于免费的MySQL来说是相对贵一些的。一般用到该产品的用户基本上是一些流量比较大的大型网站。一般大型网站使用比较多的是MSSQL跟Oracle、JSP.PHP.ASP。msSQL server跟ASP同属于微软的产品,所以它的兼容性是比较好的,所以两者搭配使用也是比较好的。当然也不是非得按照上述的搭配,只是这样的搭配是比较合适的。


MySQL
这两者之间的具体区别如下:



1.MySQL不支持nchar,ntext类型;



2.MySQL支持enum跟set类型,SQLserver不支持;



3.MySQL需要为表指定存储类型;



4.msms默认到处表创建语句的默认值表示是((0)),而在MySQL里是不允许带两括号的;



5.MySQL的递增语句是AUTO_INCREMENT,msSQL的则是identity(1,1);



6.msSQL支持getdate()方法获取当前时间日期,但是MySQL里面可以分日期类型和时间类型,获取当前日期是cur_date(),当前完整时间是now()函数;



7.msSQL识别符是[],[type]表示它区别于关键字,但是MySQL却是,也就是按键1左边的那个符号;



8.MySQL在创建表时要为每个表指定一个存储引擎类型,而msSQL只支持一种存储引擎;



9.msSQL不支持replace into语句,但是在最新的SQL2008里,也是支持merge语法的;



10.msSQL不支持limit语句,是非常遗憾的,只能用top取代limt 0,N,row_number()over()函数取代limit N,M;



11.msSQL里面检查是否有支持这个表再删除



12.MySQL不支持默认值为当前时间的datetime类型(mssql很容易做到),在MySQL里面是用timestamp类型;



13.MySQL创建非聚集索引只需要在创建表的时候指定为key即可;



14.MySQL支持无符号型的整数,那么比不支持无符号型的msSQL就能多出一倍的最大数存储;



15.MySQL的一个表的总共字段长度不超过65xxx;



16.MySQL text字段类型不允许有默认值;



17.MySQL支持date,time,year类型,msSQL到2008才支持date和time;



18.MySQL的存储过程中只是出现在最新的版本中,稳定性和性能可能不如msSQL;



19.一个表面的区别是MySQL的安装比较简单,且文件大小也是比较小的(非安装版本),跟微软的相比,安装进度来说比较简洁;



20同样的负载压力,MySQL要消耗更少的CPU跟内存,msSQL确实是比较耗费资源的;



21.MySQL的管理工具有几个是比较好的,MySQL_front,和官方那个套件,不过都没有ssms的使用方便,这是MySQL很大的一个缺点;



22.PHP连接MySQL和msSQL的方式都差不多,只需要将函数的MySQL替换成msSQL便可。

新人注册,即送价值满880元现金劵

立即注册>>
客服 电话 反馈 活动 回顶部

服务热线

+852-5764-9835

1对1贴心服务,7X24小时热线