注意MYSQL使用注释 -- 时 要后面加上空格 使用 #不用

一.数据类型

MYSQL:支持enum和set类型 ;SQL SERVER:不支持

MYSQL:不支持nchar,nvarchar,ntext类型

具体可看

SELECT * FROM msdb.dbo.sysdatatypemappings --SQL SERVER
? DATA TYPES #MYSQL

MYSQL:递增语句是AUTO_INCREMENT; SQL SERVER:IDENTITY(1,1)

-- MYSQL
CREATE TABLE student
(
stuId int PRIMARY KEY AUTO_INCREMENT
)
-- SQL SERVER
CREATE TABLE student(
stuId INT PRIMARY KEY IDENTITY(1,1)
)

MYSQL:标识符用`` ; SQL SERVER : []

-- MYSQL
SELECT `stuId`,`stuName` FROM studentInfo ;
-- SQL SERVER
SELECT [stuId],[stuName] FROM studentInfo;

MYSQL:获取当前系统时间 NOW();SQL SERVER:GETDATE()

-- MYSQL
SELECT NOW();#当前日期+时间
SELECT CURDATE();#返回当前日期
SELECT CURTIME();#返回当前时间
-- SQL SERVER
SELECT GETDATE();

MYSQL:支持RAPLACE INTO 语法 SQL SERVER:MERGE INTO

-- MYSQL
-- 使用REPLACE INTO时,首先会根据主键或者唯一索引查看表中是否有该条记录,有的话则先删除,然后插入数据;没有该记录则直接插
REPLACE INTO studentInfo(`stuId`,`stuName`) VALUES(1,'Robin');
-- SQL SERVER
MERGE INTO studentInfo A
USING(SELECT 1 AS stuId,'LuoBin' AS stuName)AS B ON A.stuId=B.stuId
WHEN MATCHED THEN
UPDATE SET A.stuName=B.stuName
WHEN NOT MATCHED THEN
INSERT (stuId,stuName) VALUES (b.stuId,b.stuName);

MYSQL:支持 INSETR INTO TABLE_NAME SET `cloumn1`='...' ... ;SQL SERVER:不支持

-- MYSQL
INSERT INTO studentInfo SET stuId=2,stuName='Robin';

MYSQL:支持 LIMIT SQL SERVER: 支持OFFSET 0 ROWS FETCH NEXT 10 ROWS ONLY、TOP、ROW_NUMBER() OVER(ORDER BY...)

-- MYSQL
SELECT * FROM studentInfo LIMIT 0,10;
--SQL SERVER 三种分页
SELECT * FROM (SELECT *,ROW_NUMBER() OVER(ORDER BY stuId) AS RowId FROM studentInfo ) AS B WHERE RowId BETWEEN 0 AND 10 SELECT * FROM studentInfo ORDER BY stuId OFFSET 0 ROWS FETCH NEXT 10 ROWS ONLY SELECT TOP 10 * FROM studentInfo WHERE stuId NOT IN (SELECT TOP 0 stuId FROM studentInf

MYSQL:支持多种存储引擎 SQL SERVER:只支持一种

SHOW ENGINES;

MYSQL:不支持默认值当前时间的datetime类型,只能用timestamp类型 SQL SERVER:支持

-- MYSQL
CREATE TABLE dateTest(
addTime timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)
-- SQL SERVER
CREATE TABLE dateTest(
addTime DATETIME DEFAULT(GETDATE())
)

MYSQL和SQL SERVER检查是否有再删除的操作

-- MYSQL
DROP TABLE IF EXISTS studentInfo;
-- SQL SERVER
IF EXISTS(SELECT * FROM sys.objects WHERE name='studentInfo')
DROP TABLE studentInfo

MYSQL:支持无符号的整数,SQL Server:不支持

MYSQL:不支持varchar(max)这种写 这个类型在mssql里面既可做一般数据存储,也可以做blob数据存储

MYSQL和SQL Server 的区别的更多相关文章

  1. MySQL:MySQL和SQL Server的区别

    导读:接下来的网上商城的项目,需要用到MySQL数据库了.这个对于我来说,是一个新接触的东西,按照惯例,在刚开始学习一个东西的时候,先从宏观上去了解它.本篇博客,先介绍SQL Server的基本内容, ...

  2. Oracle, Mysql及Sql Server的区别

    从事技术工作以来,算是把关系型数据库SQL Server,Oracle, MySQL均用了一遍,本文参考网友的梳理,做一下知识总结. 源头说起 Oracle:中文译作甲骨文,这是一家传奇的公司,有一个 ...

  3. 数据库中聚合索引(MySQL和SQL Server区别)

    一.聚集索引和非聚集索引 聚集索引:类似字典的拼音目录.表中的数据按照聚集索引的规则来存储的.就像新华字典.整本字典是按照A-Z的顺序来排列.这也是一个表只能有一个聚集索引的原因.因为这个特点,具体索 ...

  4. Oracle、MySql、Sql Server比对

    1.    价格 MySql:廉价(部分免费):当前,MySQL採用双重授权(DualLicensed),他们是GPL和MySQLAB制定的商业许可协议.假设你在一个遵循GPL的自由(开源)项目中使用 ...

  5. Oracle与Sql server的区别

    一直搞不明白Oracle数据库和sql server的区别,今天我特意查资料把他们的区别整理出来 Oracle数据库:Oracle Database,又名Oracle RDBMS,或简称Oracle. ...

  6. oracle 、mysql、 sql server使用记录

    oracle .mysql. sql server使用记录 mysql常用命令: mysqld --启动mysql数据库 show databases; -- 查看数据库 use database; ...

  7. mysql与sql server参照对比学习mysql

    mysql与sql server参照对比学习mysql 关键词:mysql语法.mysql基础 转自桦仔系列:http://www.cnblogs.com/lyhabc/p/3691555.html ...

  8. mysql,oracle,sql server数据库默认的端口号,端口号可以为负数吗?以及常用协议所对应的缺省端口号

    mysql,oracle,sql server数据库默认的端口号? mysql:3306 Oracle:1521 sql server:1433 端口号可以为负吗? 不可以,端口号都有范围的,0~65 ...

  9. 小麦苗数据库巡检脚本,支持Oracle、MySQL、SQL Server和PG等数据库

    目录 一.巡检脚本简介 二.巡检脚本特点 三.巡检结果展示 1.Oracle数据库 2.MySQL数据库 3.SQL Server数据库 4.PG数据库 5.OS信息 四.脚本运行方式 1.Oracl ...

随机推荐

  1. Jocke的IOT之路--raspberrypi更换国内镜像

    一.编辑sources.list文件 sudo nano /etc/apt/sources.list 使用#将文件内容全部注释调,更改位 deb http://mirrors.tuna.tsinghu ...

  2. FormDataBodyPart获取表单文件名乱码解决方法

    FormDataMultiPart formData=; FormDataBodyPart filePart=; filePart.getFormDataContentDisposition().ge ...

  3. excel导出功能

    /*  * 导出 add by faby on 20180918   */ public void export(){  HttpServletResponse response=ServletAct ...

  4. 模块 subprocess 交互shell

    subprocess 交互shell 执行shell命令, 与操作系统交互 三种执行命令的方法 subprocess.run(*popenargs, input=None, timeout=None, ...

  5. SVN同步代码问题集锦

    1.删除文件后file missing警告                      相关链接: http://blog.sina.com.cn/s/blog_63e26d560100ve00.htm ...

  6. Java并发基础02. 传统线程技术中的定时器技术

    传统线程技术中有个定时器,定时器的类是Timer,我们使用定时器的目的就是给它安排任务,让它在指定的时间完成任务.所以先来看一下Timer类中的方法(主要看常用的TimerTask()方法): 前面两 ...

  7. 从测试点点君跨入年薪30W的自动化逍遥君的人生感悟--测试君请进,绝对让你不虚此行!

    一.前言:人生感悟 人生,就是一个苏醒的过程,生命就是一次历练,从鲜衣怒马,到银碗里盛雪,从青葱岁月到白发染鬓,人总是会在经历中成长,在成长中懂得,在懂得里看透,看透而不说透,从而一步一步的走向成熟, ...

  8. X-Admin&ABP框架开发-版本管理

    多租户系统中,针对于不同租户开放不同功能,或是按照不同功能进行收费管理,需要从宿主本身去管理租户的版本信息,如同酒店人员对不同房间收取不同费用,依据房间内部设施,房间大小等设置不同收费标准.Abp系统 ...

  9. php zip打包

    zip中加入文件 <?php $zip = new ZipArchive; if ($zip->open('test.zip', ZipArchive::OVERWRITE) === TR ...

  10. 一起了解 .Net Foundation 项目 No.23

    .Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. WorldWide Tel ...