sql server 2008和mysql的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql server 2008和mysql的区别相关的知识,希望对你有一定的参考价值。

1. mysql支持enum和set类型,SQL Server不支持;
2. MySQL不支持nchar、nvarchar、ntext类型;
3. MySQL数据库的递增语句是AUTO_INCREMENT,而MS SQL是identity(1,1);
4. MS SQL默认到处表创建语句的默认值表示是((0)),而在MySQL里面是不允许带两括号的;
5. MySQL需要为表指定存储类型;
6. MS SQL识别符是[],[type]表示他区别于关键字,但是MySQL却是 `,也就是按键1左边的那个符号;
7. MS SQL支持getdate()方法获取当前时间日期,但是MySQL里面可以分日期类型和时间类型,获取当前日期是cur_date(),当前完整时间是 now()函数;
8. MS SQL不支持replace into语句,但是在最新的SQL Server 2008里面,也支持merge语法;
9. MySQL数据库支持insert into table1 set t1 = ‘’, t2 = ‘’ ,但是MS SQL不支持这样写;
10. MySQL支持insert into tabl1 values (1,1), (1,1), (1,1), (1,1), (1,1), (1,1), (1,1)
11. MS SQL不支持limit语句,是非常遗憾的,只能用top 取代limt 0,N,row_number() over()函数取代limit N,M;
12. MySQL在创建表时要为每个表指定一个存储引擎类型,而MS SQL只支持一种存储引擎;
13. MySQL不支持默认值为当前时间的datetime类型(MS SQL很容易做到),在MySQL里面是用timestamp类型;
14. MS SQL里面检查是否有这个表再删除,需要这样:

if exists (select * from dbo.sysobjects where id = object_id(N'uc_newpm') and OBJECTPROPERTY(id,N'IsUserTable')=1)

但是在MySQL里面只需要 DROP TABLE IF EXISTS cdb_forums;
15. MySQL支持无符号型的整数,那么比不支持无符号型的MS SQL就能多出一倍的最大数存储;
16. MySQL不支持在MS SQL里面使用非常方便的varchar(max)类型,这个类型在MS SQL里面既可做一般数据存储,也可以做blob数据存储;
17. MySQL数据库创建非聚集索引只需要在创建表的时候指定为key就行,比如:KEY displayorder (fid,displayorder)
在MS SQL里面必须要:
create unique nonclustered index index_uc_protectedmembers_username_appid on dbo.uc_protectedmembers(username asc,appid asc)

18. MySQL text字段类型不允许有默认值;
19. MySQL的一个表的总共字段长度不超过65XXX。
20. 一个很表面的区别就是MySQL的安装特别简单,而且文件大小才110M(非安装版),相比微软这个庞然大物,安装进度来说简直就是.....
21. MySQL的管理工具有几个比较好的,MySQL_front和官方那个套件,不过都没有SSMS的使用方便,这是MySQL很大的一个缺点。
22. MySQL的存储过程只是出现在最新的版本中,稳定性和性能可能不如MS SQL。
23. 同样的负载压力,MySQL要消耗更少的CPU和内存,MS SQL的确是很耗资源;
24. php连接MySQL数据库和MS SQL的方式都差不多,只需要将函数的MySQL替换成MS SQL即可。
25. MySQL支持 date,time,year类型,MS SQL到2008才支持date和time。
参考技术A sql
server
2005和mysql都是网络数据库,
区别是有的,因为二者语法不一致,
如果学会了sql
server
2005的标准和操作,再去操作mysql是一样的,
因为mysql主要针对的是小型数据库应用。
参考技术B 你学了
sql
server
mysql
学起来就很容易了,
区别就是
有一些
控制代码名字不一样,但功能都一样,没多大区别,但是
sql
server
是微软的
只能应用windows平台,而mysql
和linux
是最好的搭档,web
开发,中小企业
都用
mysql

???Sql Server???SQL SERVER ????????????

?????????mamicode   col   ??????   info   ??????   ??????   set   dbcc   ??????   

??????:???Sql Server???SQL SERVER ????????????

??????????????????????????????????????????????????????????????????????????????????????????(recovery)??????????????????

??????????????????????????????????????????????????????????????????????????????????????????????????????????????????

??????????????????????????????????????????????????????????????????

#??????????????????????????????????????????

1??????????????????????????????

????????????

2?????????????????????????????????“??????”??????“??????”

????????????

3???????????????????????????“??????”->“??????”

????????????

 ????????????

4???????????????????????????????????????????????????“??????”

????????????

#????????????????????????

 

ALTER DATABASE test SET RECOVERY SIMPLE --???“????????????”?????????“??????”
GO
USE test
GO
DBCC SHRINKFILE (N???test_log??? , 1, TRUNCATEONLY)--???????????????????????????1M
GO
USE test
GO
ALTER DATABASE test SET RECOVERY FULL WITH NO_WAIT ----???“????????????”?????????“??????”
GO
ALTER DATABASE test SET RECOVERY FULL
GO

 

 

 

 

?????????????????????????????????“??????”?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

 

以上是关于sql server 2008和mysql的区别的主要内容,如果未能解决你的问题,请参考以下文章

sql sever 2008跟mysql有啥区别

sql server 2008 r2那些版本有啥区别

如何将mysql 数据库导入到sql server 2008 数据库

mysql_server2008r2和mysql5.7是啥关系

sqlserver2008数据库怎么查看mysql数据库的表

Microsoft SQL Server 2008 和Microsof Server 2008 有啥区别.?