1. 程式人生 > 實用技巧 >MySQL與MsSQL的區別

MySQL與MsSQL的區別

廠商和作業系統

MsSQL是微軟的SQL Server只能用在Windows作業系統上,MySQL是MySQL AB公司開發支援多平臺

MySQL支援的資料量較小,適合於小中型網站

MySQL比較輕量,重在Windows系統的安裝就可以看出來,mysql的檔案大小隻有一百多M,MsSQL更消耗CPU和記憶體的資源

資料型別

mysql支援enum,和set型別,sql server不支援
mysql不支援nchar,nvarchar,ntext型別

它表示儲存的是Unicode資料型別的字元。我們知道字元中,英文字元只需要一個位元組儲存就足夠了,但漢字眾多,需要兩個位元組儲存,英文與漢字同時存在時容易造成混亂,Unicode字符集就是為了解決字符集這種不相容的問題而產生的,它所有的字元都用兩個位元組表示,即英文字元也是用兩個位元組表示。帶來方便的同時會在儲存英文的時候造成數量上的損耗

如果含有中文字元,用nchar/nvarchar,如果純英文和數字,用char/varchar,在mysql中char,varchar被預設為了nchar,nvarchar

mysql的遞增語句是AUTO_INCREMENT,而mssql是identity(1,1)
create table tb(id int identity(1,1) primary key )
mysql支援無符號型的整數,那麼比不支援無符號型的mssql就能多出一倍的最大數儲存

識別符

MySQL的識別符是`

MsSQL的識別符是[]

SELECT `PASSWORD`
FROM login

時間

MsSQL支援getdate()方法獲取當前時間日期

SELECT getdate()

MySQL裡面可以分日期型別和時間型別,獲取當前日期是cur_date(),當前完整時間是 now()函式

SELECT NOW(),CURDATE(),CURTIME()
NOW()         CURDATE()  CURTIME() 
------------------- ---------- -----------
2020-11-14 16:59:10 2020-11-14 16:59:10

儲存引擎

mysql在建立表時要為每個表指定一個儲存引擎型別,而mssql只支援一種儲存引擎

MySQL支援的語句

MySQL支援replace into語句

首先嚐試插入資料到表中,如果發現表中已經有此行資料(根據主鍵或者唯一索引判斷)則先刪除此行資料,然後插入新的資料。 否則,直接插入新資料。

MySQL支援insert into tabl1 values (1,1), (1,1), (1,1), (1,1), (1,1), (1,1), (1,1)語句
INSERT INTO student (birthday,classno,phone,sex,sname,score) VALUES
('1998-11-11','202001','18739396145','男','翟--',501.0),
('1998-11-11','202001','18739490123','女','劉萌萌',503.0);
mysql支援insert into table1 set t1 = ‘’, t2 = ‘’
INSERT INTO student SET studentno = '20171514', sname = 'zhai'
mysql支援limit語句

參考:https://blog.csdn.net/awen1983/article/details/5666877