SQL Server查询到MySQL查询转换

时间:2011-06-16 07:02:04

标签: mysql sql sql-server

我正在从SQL Server到MySQL进行查询转换。那么有人可以建议一个网站提供不同的关键字,它们将分别在SQL Server和MySQL中执行相同的操作吗?

例如,要获取当前时间,我们将使用以下关键字

 MSSQL   getdate()
 MYSQL   now()
像这样,对于我需要关键字的所有操作。

3 个答案:

答案 0 :(得分:2)

我做了几次,我的建议是google如下

Mysql中的Mssql getdate()

,而不是像http://www.x7media.com/resources/SQL_Differences_Between_Microsoft_SQL_Server_and_MySQL.asp

这样的网站

答案 1 :(得分:2)

您是否查看了网站上提供的MySQL文档?

快速搜索发现:A Practical Guide to Migrating From Microsoft SQL Server to MySQL

你必须注册才能获得该文件,但这可能值得一读。

我也找到了这个页面:Migrating from Microsoft SQL Server and Access to MySQL

其中包含有关流程的一般信息,并列出了一些迁移工具(尽管有些可能是Access特有的)

答案 2 :(得分:0)

由于MS SQLMySQL中的SQL查询语法相似但不完全相同,因此以下是将MS SQL转换为MySQL查询的一些提示:

  1. MySQL不允许在列名表周围使用方括号,它们都必须用`符号替换或切断。例如: [object] 将是`object`

  2. JOIN构造方面,WHERE中的关键字MS SQLON中的MySQL取代。例如: ... table1 CROSS JOIN table2 WHERE condition必须翻译为... table1 CROSS JOIN table2 ON condition

  3. 使用PHP时,MS SQL中的大多数SQL函数都有前缀 SQLSRV ,而MySQL中的函数前缀 MYSQL < / strong>即可。例如:sqlsrv_fetch_arraysqlsrv_num_rowssqlsrv_query将转换为mysql_fetch_arraymysql_num_rowsmysql_query

  4. 在MS SQL中,LEN()函数用于返回字符串表达式的长度。 MySQL相当于LENGTH()

  5. CONVERT()函数用于在MS SQL中将一种数据类型的表达式转换为另一种数据类型。在MySQL中,CONVERT()函数在不同的字符集之间转换文本数据。但是,有相同的函数CAST(),因此在MS查询中每次出现的转换(类型,表达式)都必须在MySQL查询中替换为强制转换(表达式AS类型)。

  6. 仅列出一些提示。有关详细信息,请参阅this页面。 干杯!