程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL與SQL Server的一些差別淺析

MySQL與SQL Server的一些差別淺析

編輯:MySQL綜合教程

MySQL與SQL Server的一些差別淺析。本站提示廣大學習愛好者:(MySQL與SQL Server的一些差別淺析)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL與SQL Server的一些差別淺析正文


1、mysql支撐enum,和set類型,sql server不支撐
2、mysql不支撐nchar,nvarchar,ntext類型
3、mysql的遞增語句是AUTO_INCREMENT,而mssql是identity(1,1)
4、mssql默許隨處表創立語句的默許值表現是((0)),而在mysql外面是不許可帶兩括號的
5、mysql須要為表指定存儲類型
6、mssql辨認符是[],[type]表現他差別於症結字,然則mysql倒是 `,也就是按鍵1右邊的誰人符號
7、mssql支撐getdate()辦法獲得以後時光日期,然則mysql外面可以分日期類型和時光類型,獲得以後日期是cur_date(),以後完全時光是 now()函數
8、mssql不支撐replace into 語句,然則在最新的sql20008外面,也支撐merge語法
9、mysql支撐insert into table1 set t1 = ‘', t2 = ‘' ,然則mssql不支撐如許寫
10、mysql支撐insert into tabl1 values (1,1), (1,1), (1,1), (1,1), (1,1), (1,1), (1,1)
11 mssql不支撐limit語句,長短常遺憾的,只能用top 代替limt 0,N,row_number() over()函數代替limit N,M
12、mysql在創立表時要為每一個表指定一個存儲引擎類型,而mssql只支撐一種存儲引擎
13、mysql不支撐默許值為以後時光的datetime類型(mssql很輕易做到),在mysql外面是用timestamp類型
14、mssql外面檢討能否有這個表再刪除,須要如許:if exists (select * from dbo.sysobjects where id=id (N'uc_newpm') and  OBJECTPROPERTY(id, N'IsUserTable') = 1) 然則在mysql外面只須要 DROP TABLE IF EXISTS cdb_forums;
15、mysql支撐無符號型的整數,那末比不支撐無符號型的mssql就可以多出一倍的最年夜數存儲
16、mysql不支撐在mssql外面應用異常便利的varchar(max)類型,這個類型在mssql外面既可做普通數據存儲,也能夠做blob數據存儲
17、mysql創立非集合索引只須要在創立表的時刻指定為key就行,好比:KEY displayorder (fid,displayorder) 在mssql外面必需要:
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的裝置特殊簡略,並且文件年夜小才23M閣下(5.5.23),比擬微軟這個龐然年夜物,裝置進度來講的確就是.....
21、mysql的治理對象有幾個比擬好的,mysql_front,和官方誰人套件,不外都沒有SSMS的應用便利,這是mysql很年夜的一個缺陷。
22、mysql的存儲進程只是湧現在最新的版本中,穩固性和機能能夠不如mssql。
23、異樣的負載壓力,mysql要消費更少的CPU和內存,mssql切實其實是很耗資本。
24、php銜接mysql和mssql的方法都差不多,只須要將函數的mysql調換成mssql便可,假如是PDO方法只須要把mysql調換mssql便可。
25、mysql支撐date,time,year類型,mssql到2008才支撐date和time。

附:MySQL與MSSQL分頁的差別

之前一向用MySQL,固然比起mssql這個宏大的數據庫體系mysql很修長,但它其實不減色。以下說說這兩個在數據庫各自的分頁差別
例1,掏出前十條

SELECT * FROM table LIMIT 10;

在mssql中

SELECT TOP 10 * FROM table

例2,每頁十條,掏出第三頁
在MySQL中

SELECT * FROM table LIMIT 20,10

在mssql中

SELECT TOP 10 * FROM table WHERE id NOT IN(
        SELECT TOP 20 id FROM table ORDER BY id DESC
) ORDER BY id DESC;

由以上例子可以看出,在MySQL平分頁用LIMIT症結字,假如是LIMIT 10表現取前十條,假如是LIMIT 10,10表現偏移十條取前十筆記錄。在mssql頂用top症結字,假如只取前n筆記錄直接top n便可,然則如果分頁取就有點費事。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved