注意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. JSP+Servlet+C3P0+Mysql实现的苹果网上商城

    项目简介 项目来源于:https://github.com/gpengDemo/Estore 本系统基于JSP+Servlet+C3P0+Mysql.涉及技术少,易于理解,适合JavaWeb初学者学习 ...

  2. Hive常用的10个系统函数及作用

    聚合函数 函数处理的数据粒度为多条记录. sum()—求和 count()—求数据量 avg()—求平均直 distinct—求不同值数 min—求最小值 max—求最人值 分析函数 Analytic ...

  3. SpringBoot项目中应用Jedis和一些常见配置

    优雅的使用Jedis Redis的Java客户端有很多,Jedis是其中使用比较广泛和性能比较稳定的一个.并且其API和RedisAPI命名风格类似,推荐大家使用 在项目中引入Jedis 可以通过Ma ...

  4. Redis 6.0 新增功能 - ACL

    Redis 6.0 ACL 期待已久的ACL终于来了,大家知道在redis集群中只有一个db,在多项目操作时可以通过key前缀来区分,但是还是能获取其它key,这样就带来了安全风险. Access C ...

  5. 使用Python中的NLTK和spaCy删除停用词与文本标准化

    概述 了解如何在Python中删除停用词与文本标准化,这些是自然语言处理的基本技术 探索不同的方法来删除停用词,以及讨论文本标准化技术,如词干化(stemming)和词形还原(lemmatizatio ...

  6. Go语言库系列之aurora

    背景介绍 今天跟大家推荐一款可以给终端输出上色的工具--aurora. 极速上手 准备工作 初始化项目 go mod init aurora 演示项目结构 . ├── go.mod ├── go.su ...

  7. Ubuntu复制粘贴快捷键

    复制:[Ctrl+Insert] 粘贴:[Shitf+Insert]

  8. Blazor入门笔记(6)-组件间通信

    1.环境 VS2019 16.5.1.NET Core SDK 3.1.200Blazor WebAssembly Templates 3.2.0-preview2.20160.5 2.简介 在使用B ...

  9. 原生js弹力球

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. Linux/Unix下pid文件的作用

    主要有三点: (1) pid文件的内容:pid文件为文本文件,内容只有一行, 记录了该进程的ID. 用cat命令可以看到. (2) pid文件的作用:防止进程启动多个副本.只有获得pid文件(固定路径 ...