【SQL】 MySql与SqlServer差异比较

本文主要记录将数据库从SqlServer移植到MySql的过程中,发现的各种坑爹问题。以SqlServer为主,记录MySql的差异性。

1.IF语句

  首先MySql中的的IF语法不同。

IF  Condition THEN
    -- todo
ELSE IF Condition THEN
    -- todo
ELSE
    -- todo
END IF;    

  其次,MySql中的IF语句,只能在存储过程或函数中执行,不能直接在查询中执行。(坑爹!!!

  

时间: 2024-08-11 03:36:24

【SQL】 MySql与SqlServer差异比较的相关文章

sql mysql和sqlserver存在就更新,不存在就插入的写法(转)

转自:http://hi.baidu.com/tidy0608/item/ff930fe2436f2601560f1dd9 sqlsever数据存在就更新,不存在就插入的两种方法 两种经常使用的方法: 1. Update, if @@ROWCOUNT = 0 then insert UPDATETable1 SETColumn1 = @newValue WHEREId = @id [email protected]@ROWCOUNT= 0 BEGIN INSERT INTOTable1 (Id,

Java连接数据库(mysql,sqlserver)

犹记当年为了使用java程序连接mysql数据库话费一天时间,最后发现是没有导入外包,如今看来真的发现自己那时有点二,也怪我使用的教科书上没有说明这点(强行甩锅,哈哈).今天分享出来,,希望后者不因为这点小问题而大费周章. 首先说下数据库,数据库在操作系统看来其实就是一个服务,mysql在windows服务中叫mysql服务,sqlserver叫sqlserver服务(我们在任务管理器中可以在服务一项中找到我们装到自己机器上的数据库服务),我们使用的toad for mysql等叫数据库管理工具

mysql autocommit的差异

用python在开发一个小web站点时碰到一个问题,通过mysql客户端修改库中数据后(有做提交),在前台web页面刷新还是以前的数据.而另开一个mysql客户端查询是可以查询到值的.重启web服务后可以看到新值.而同样使用java的jdbc方式连接时同样的方式是可以看到新值的. 于是决定开启mysql的日志看看实际运行的SQL有什么差异. 先看python连接方式的: 150517 13:34:00     3 Connect   [email protected] on dw        

MySQL机sqlserver注射和php注入

最近在学习MySQL和sqlserver数据库,由于我的专业是信息安全,所以把web安全涉及到的注入全部总结了一下,里面涉及到内容比较多.希望想学习的提前要对这两种数据库有一定了解,才能更好的学习盲注. 1)database(),version(),user() union联合查询,因为只有版本大于4.0,才会支持union查询 .并且只有两个表列数相同时,才会返会正确的表. 有一个information_schema数据库,库里面有一个 http://www.a.com/cms/new.php

mysql、sqlserver、oracle三种数据库维护索引、外键、字段语法总结

mysql.sqlserver.oracle三种数据库维护索引.外键.字段语法总结 1.     MYSQL数据库 1)    创建索引 CREATE INDEX index_name ON table_name(column_list) CREATE UNIQUE INDEX index_name ON table_name(column_list) 修改表的方式添加索引 ALTER TABLE table_name ADD INDEX index_name(column_list) ALTE

Oracle、MySql、SQLServer 数据分页查询

Oracle.MySql.SQLServer 数据分页查询 摘自:http://www.cnblogs.com/wangyong/p/3396333.html 近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习..... (一). mysql的分页查询 mysql的分页查询是最简单的,借助关键字limit即可实现查询,查询语句通式: /* * sql:可以是单表的查询语句,也可以是多表的联合查询语句 * firstIndex:

Mysql,SqlServer,Oracle主键自动增长的设置

1.把主键定义为自动增长标识符类型 MySql 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如:   customers(id  auto_increment    , name (  customers(name)  id  customers; 以上sql语句先创建了customers表,然后插入两条记录,在插入时仅仅设定了name字段的值.最后查询表中id字段,查询结果为: 由此可见,一旦把id设为auto_increment类型,mys

MYSQL,DB2,SQLSERVER数据库不同点浅探(一)

简单地比较一下MYSQL,DB2,SQLSERVER数据库设计不同点,为日后看MYSQL源代码先打打底,今天先比较数据库对象吧: 1.DB2上关于表有一个表空间的概念,简单地说, 表空间是数据库系统中数据库逻辑结构与操作系统物理结构之间建立映射的重要存储结构,一般来说一个表空间对应一个表.DB2在表空间上分配表空间对应表的一切物理属性,比如首次分配大小,扩展大小,页面每页初始空闲空间,空闲页面占总页面百分比等.因此,DB2上的系统DBA对表的操作更多是基于表空间上.比如因为表上的删改查不可避免地

MYSQL同步Sqlserver数据库数据

MYSQL同步sqlserver数据库数据的方法. 1.下载安装SQLyog v10.51,确保本机安装了Mysql和Sql server 2008 r2. 2.使用SQLyog连上本地mysql数据库 3.点数据库>导入>导入外部数据 进入SQLyog外部数据导入向导,选择"开始新的工作",点"下一步" 4.在数据源类型中只有access.excel.csv.任何odbc数据源.使用前面三个中间数据格式转换方式都可以导入不过就麻烦了.这里我们选择任何O