【问题标题】:Difference in SQL [closed]SQL的差异[关闭]
【发布时间】:2014-12-02 14:03:29
【问题描述】:

我正在计划学习 SQL。

我正在研究 SQLAlchemy,因为我对 Python 相当熟悉。

我想知道,即使 sql 在 MySQL 或 MSSQL 或任何其他中,SQL 是否相同。还是说 OOP 或脚本是一样的,说 Python 类似于 Java 到 C++,因为循环和 fileIO 是相同的,只是语法不同。

提前感谢您对此提供的任何帮助。

【问题讨论】:

  • SQL 因数据库而异。有一个标准,所以它不像 java/python/C++ 完全不同,但肯定有区别。想想美国和英国——两个被共同语言划分的国家。
  • sqlalchemy 的好处是它将为您提供一个通用接口来处理不同的数据库引擎。但是,您应该对SQL 有一定程度的了解才能编写高效的后端代码。

标签: python mysql sql sql-server sqlalchemy


【解决方案1】:

结构化查询语言 (SQL) 有 ANSI 标准。有几个修订版(例如 ANSI-92)和几个级别的“符合”这些标准。几乎所有的数据库引擎都符合核心语法(带有关键字和基本语句语法)。

http://en.wikipedia.org/wiki/SQL-92

但是每个数据库都可以随意添加扩展和偏离标准。并且在数据库之间“可移植”的语句方面存在一些非常显着的差异,令人痛苦的差异。

大多数数据库都记录了它们对 ANSI 标准的遵守程度,以及与标准 SQL 的差异。例如,MySQL:

http://dev.mysql.com/doc/refman/5.5/en/compatibility.html

编写一个几乎可以在每个数据库中“工作”的语句是完全可能的;例如:

select * from emp order by id

但是一旦事情开始变得比非常简单的事情更复杂,当我们开始做真正有用的事情时,SQL 的差异就会变得更加明显。

【讨论】:

    猜你喜欢
    • 2010-09-05
    • 2021-02-13
    • 1970-01-01
    • 2010-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-02
    • 1970-01-01
    相关资源
    最近更新 更多