据我观察,中国的开发者创造了一种独特的SQL发音:/'sɜːkl/,既好听,又好读,挺好的。但是今年我开始做数据库相关的工作,作为一个专业人士,决定对SQL发音进行一些考证。

直接说结论吧,很多人沿用了/ˈsiːkwəl/这个读音,因为这门语言以前叫做“SEQUEL”。但更官方一些的读音应该是ISO标准规定的/ˌɛsˌkjuːˈɛl/。这个说法的依据是,有好事者给Don Chamberlin(SQL语言发明者之一)发邮件[1],内容如下:

Hello Don,

I’m sorry to waste your time with such a silly question, but I’ve often heard SQL pronounced S-Q-L or as Sequel. I’ve also seen the official pronunciation listed both ways. According to wikipedia, you and Raymond Boyce created the language and it was shortened to SQL after some legal dispute. So my question is, is there an official pronunciation to SQL? Thank you for your time.

– Pat

To my delight, he replied back:

Hi Pat,

Since the language was originally named SEQUEL, many people continued to pronounce the name that way after it was shortened to SQL. Both pronunciations are widely used and recognized. As to which is more “official”, I guess the authority would be the ISO Standard, which is spelled (and presumably pronounced) S-Q-L.

Thanks for your interest,
Don Chamberlin

看到Don的邮件后,我好像也感受到了一点Pat当时的激动心情。于是在wiki上找到了ISO 9075的下载地址,然而在翻个底朝天后,并没有找到规定发音的内容。

首先就怀疑是标准的版本不对,事实果然如此,因为又在网上发现了这句话:"The 1986 ANSI SQL standard declared the official pronunciation of SQL to be "es queue el"." [2]。说是在1986年,还是ANSI标准的时候规定的读音。

这个86版的古董并不好找,首先wiki上的dialects里SQL-86的连接是灰的,然后又听到了一个不幸的传闻:"Being unable to find a copy and having ANSI unwilling to sell a copy, it seems that SQL-86 is lost in the age of the internet."[3]。

最后我实在没办法放弃了找SQL-86这条路,还是放在博客上,借助网友的力量一起搜寻吧。如果没有这个标准,其实以上的考据全是站不住脚的,比如Don的邮件可能是杜撰的,网上的只言片语更是不能作为依据。

不过不要伤心,在找到SQL-86之前,我们还是可以通过官方资料来“证明”SQL的发音的。打开这个页面https://www.iso.org/standard/63555.html,它是ISO/IEC 9075-1:2016标准官方的销售页面,大概1160元,[提示]不要点"Buy"。

继续往下看商品介绍,第一段的最后,写的是"an SQL-implementation"而不是"a SQL-implementation",这基本说明官方发音应该是/ˌɛsˌkjuːˈɛl/。

后记

MySQL的读音是遵守ISO标准的,"The official way to pronounce “MySQL” is “My Ess Que Ell” (not “my sequel”), but we do not mind if you pronounce it as “my sequel” or in some other localized way."。[4]

而Oracle依然是复古发音/ˈsiːkwəl/。"SEQUEL later became SQL (still pronounced "sequel")."。[5]

[Warning] 去Oracle面试的话,千万不要用ISO发音,因为有人因此被拒了(10年前):"If you can't pronounce it correctly, then I have doubts as to your ability to use it correctly."[6]

参考资料:

[1] http://patorjk.com/blog/2012/01/26/pronouncing-sql-s-q-l-or-sequel/

[2] http://www.learn.geekinterview.com/database/sql/sql-standardization.html

[3] https://dba.stackexchange.com/questions/168595/where-can-i-find-the-first-standardization-of-sql-sql-86

[4] https://dev.mysql.com/doc/refman/5.7/en/what-is-mysql.html

[5] https://docs.oracle.com/cd/B19306_01/server.102/b14200/intro001.htm#i1712

[6] https://community.oracle.com/thread/632585?start=15&tstart=0

SQL发音考(搜寻SQL-86标准)的更多相关文章

  1. 86标准SQL与92标准SQL用法区别

    86标准SQL与92标准SQL用法区别 在开发Oracle 9i时, 数据库还时间了ANSL SQL/92标准的链接语法, 在书中建议在使用Oracle 9i及更高版本时,应该使用SQL/92标准的语 ...

  2. 大数据技术之_19_Spark学习_03_Spark SQL 应用解析 + Spark SQL 概述、解析 、数据源、实战 + 执行 Spark SQL 查询 + JDBC/ODBC 服务器

    第1章 Spark SQL 概述1.1 什么是 Spark SQL1.2 RDD vs DataFrames vs DataSet1.2.1 RDD1.2.2 DataFrame1.2.3 DataS ...

  3. 整理:sql语句优化之SQL Server

    . 增加服务器CPU个数;但是必须明白并行处理串行处理更需要资源例如内存.使用并行还是串行程是MsSQL自动评估选择的.单个任务分解成多个任务,就可 以在处理器上运行.例如耽搁查询的排序.连接.扫描和 ...

  4. SQL Server 2005、SQL Server 2008版本比较

    SQL Server 2005的版本有SQL Server 2005企业版(Enterprise).SQL Server 2005标准版(Standard) 和SQL Server 2005工作组版( ...

  5. SQL Sever 各版本下载 SQL Server 2012下载SQL Server 2008下载SQL Server 2005

    SQL Server 2012SQL Server 2012 开发版(DVD)(X64,X86)(中文简体)ed2k://|file|cn_sql_server_2012_developer_edit ...

  6. [SQL]透過redgate SQL Monitor 來找出 ASYNC_NETWORK_IO 問題

    原文:[SQL]透過redgate SQL Monitor 來找出 ASYNC_NETWORK_IO 問題 最近因為在查一個SQL的效能問題,透過 sys.dm_os_wait_stats 來取得To ...

  7. SQL点滴2—重温sql语句中的join操作

    原文:SQL点滴2-重温sql语句中的join操作 1.join语句 Sql join语句用来合并两个或多个表中的记录.ANSI标准SQL语句中有四种JOIN:INNER,OUTER,LEFTER,R ...

  8. ABAP 7.53 中的ABAP SQL(原Open SQL)新特性

    S/4 HANA 1809 已经在上月发布,随之而来的是ABAP 7.53. 本文是更新文档中ABAP SQL的部分的翻译. 本次更新的内容较多,主要内容包括:Open SQL更名为ABAP SQL: ...

  9. 11g新特性-自动sql调优(Automatic SQL Tuning)

    11g新特性-自动sql调优(Automatic SQL Tuning) 在Oracle 10g中,引进了自动sql调优特性.此外,ADDM也会监控捕获高负载的sql语句. 在Oracle 11g中, ...

随机推荐

  1. MYSQL数据库学习十一 多表数据记录查询

    11.1 关系数据操作 并(UNION):把具有相同字段数目和字段类型的表合并到一起. 笛卡尔积(CARTESIAN PRODUCT):没有连接条件表关系的返回结果.字段数=table1字段数+tab ...

  2. 缺少libssl.so.4文件

    1.报错代码: /usr/local/pureftpd/sbin/pure-ftpd: error while loading shared libraries: libssl.so.4: wrong ...

  3. java数据结构与算法之栈(Stack)设计与实现

    本篇是java数据结构与算法的第4篇,从本篇开始我们将来了解栈的设计与实现,以下是本篇的相关知识点: 栈的抽象数据类型 顺序栈的设计与实现 链式栈的设计与实现 栈的应用 栈的抽象数据类型 栈是一种用于 ...

  4. [SDOI2011]染色

    [SDOI2011]染色 题目描述 输入输出格式 输出格式: 对于每个询问操作,输出一行答案. 解法 ps:这题本来是树剖的,但我用lct写的,以下是lct的写法,树剖会有所不同 我们考虑把不同色点的 ...

  5. 团队作业7——第二次项目冲刺(Beta版本12.08)

    项目每个成员的进展.存在问题.接下来两天的安排. 已完成的内容:完成了排行榜的测试.上传头像功能的原型设计.界面优化 计划完成的内容:上传头像功能开发.测试.头像裁剪原型设计 每个人的工作 (有wor ...

  6. C语言--第一周作业(更改)

    *********************学习总结********************* 1.所用词典: 2.Git截图: *********************遇到的问题和解决方法***** ...

  7. 详谈C++虚函数表那回事(多重继承关系)

    上一篇说了一般继承,也就是单继承的虚函数表,接下来说说多重继承的虚函数表: 1.无虚函数覆盖的多重继承: 代码: #pragma once //无覆盖,多重继承 class Base1 { publi ...

  8. bzoj千题计划280:bzoj4592: [Shoi2015]脑洞治疗仪

    http://www.lydsy.com/JudgeOnline/problem.php?id=4592 注意操作1 先挖再补,就是补的范围可以包含挖的范围 SHOI2015 的题 略水啊(逃) #i ...

  9. 函数式编程之foldLeftViaFoldRight

    问题来自 Scala 函数式编程 一书的习题, 让我很困扰, 感觉函数式编程有点神学的感觉.后面看懂之后, 又觉得函数式编程所提供的高阶抽象是多么的强大. 这个问题让我发呆了好久, 现在把自己形成的想 ...

  10. 服务器数据恢复_Linux网站服务器故障数据恢复案例

    [数据恢复故障描述] 一台linux网站服务器,DELL R200,管理约50个左右网站,使用一块SATA 160GB硬盘.正常使用中突然宕机,尝试再次启动失败,将硬盘拆下检测时发现存在约100个坏扇 ...