sql和mysql 语法区别吗_sql和mysql语法有什么不同
sql和mysql語法的區(qū)別有:mysql支持enum和set類型,sql不支持,mysql需要為表指定存儲類型,mysqlL中text字段類型不允許有默認(rèn)值,sql允許有等等方面都存在差異
MySQL與SQLServer的語法區(qū)別
1、MySQL支持enum,和set類型,SQL Server不支持
2、MySQL不支持nchar,nvarchar,ntext類型
3、MySQL的遞增語句是AUTO_INCREMENT,而MS SQL是identity(1,1)
4、MS SQL默認(rèn)到處表創(chuàng)建語句的默認(rèn)值表示是((0)),而在MySQL里面是不允許帶兩括號的
5、MySQL需要為表指定存儲類型
6、MS SQL識別符是[],[type]表示他區(qū)別于關(guān)鍵字,但是MySQL卻是 `,也就是按鍵1左邊的那個(gè)符號
7、MS SQL支持getdate()方法獲取當(dāng)前時(shí)間日期,但是MySQL里面可以分日期類型和時(shí)間類型,獲取當(dāng)前日期是current_date (),當(dāng)前完整時(shí)間是 now()函數(shù)
8、MS SQL不支持replace into 語句,但是在最新的sql20008里面,也支持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、MySQL在創(chuàng)建表時(shí)要為每個(gè)表指定一個(gè)存儲引擎類型,而MS SQL只支持一種存儲引擎
12、MySQL不支持默認(rèn)值為當(dāng)前時(shí)間的datetime類型(MS SQL很容易做到),在MySQL里面 是用timestamp類型
13、MS SQL里面檢查是否有這個(gè)表再刪除,需要這樣: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;
14、MySQL支持無符號型的整數(shù),那么比不支持無符號型的MS SQL就能多出一倍的最大數(shù) 存儲
15、MySQL不支持在MS SQL里面使用非常方便的varchar(max)類型,這個(gè)類型在MS SQL里 面既可做一般數(shù)據(jù)存儲,也可以做blob數(shù)據(jù)存儲
16、MySQL創(chuàng)建非聚集索引只需要在創(chuàng)建表的時(shí)候指定為key就行,比如:KEY displayorder (fid,displayorder)
在MS SQL里面必須要:create unique nonclustered index index_uc_protectedmembers_username_appid on dbo.uc_protectedmembers (username asc,appid asc)
17、MySQL text字段類型不允許有默認(rèn)值
18、MySQL的一個(gè)表的總共字段長度不超過65XXX。
19、一個(gè)很表面的區(qū)別就是MySQL的安裝特別簡單,而且文件大小才110M(非安裝版),相比微軟這個(gè)龐然大物,安裝進(jìn)度來說簡直就是…
20、MySQL的存儲過程只是出現(xiàn)在最新的版本中,穩(wěn)定性和性能可能不如MS SQL。
21、同樣的負(fù)載壓力,MySQL要消耗更少的CPU和內(nèi)存,MS SQL的確是很耗資源。
22、mysql的ifnull()函數(shù)對應(yīng)sql的isnull()函數(shù);
23、mysql的存儲過程中變量的定義去掉@;
24、mysql的每句結(jié)束要用";"
25、SQLServer存儲過程的AS在MySql中需要用begin …end替換
總結(jié)
以上是生活随笔為你收集整理的sql和mysql 语法区别吗_sql和mysql语法有什么不同的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 逆转一个链表
- 下一篇: MySQL主从复制作用和原理