- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 1 章 不同数据库的差异
目前市场上流行的数据库有很多种,虽然这些数据库在开发时遵循同样的一个标准,但是,每种数
据库都有一些与其他同类产品不一样的地方。本章将主要介绍不同种数据库间的差异,并对 PHP 与不
同数据库的操作上的差异作一下介绍。
1.1 ANSI SQL 以及常见关系式数据库的 SQL 扩展
在前面的章节中介绍了如何使用 SQL 语言来操作数据库。SQL 语言是目前流行的一款专门用于操
作关系型数据库的语言。现在流行的SQL 语言标准为ANSI 制定的ANSI SQL-92 。ANSI 是美国工商业
集团组织,是ISO 和IEC 的成员之一。1992 年ISO 和IEC 共同发布了SQL-92,随后,ANSI 也发布了
ANSI SQL-92 ,通常称为ANSI SQL 。尽管市面上流行的各种关系型数据库与ANSI SQL 版本有一些差
异,但是基本上都是遵循ANSI SQL 的标准。
本节将介绍几种常见的关系型数据库中的ANSI SQL 扩展。
1.1.1 ANSI SQL
ANSI SQL 主要包括两种数据操作语言,一个是用于数据库元素定义的数据定义语言(DDL ),一
个是用于数据库元素管理的数据管理语言(DML )。
1.数据定义语言(DDL )
DDL 是用于定义和管理数据库元素的语言,主要用于数据库中的数据表、索引、视图的创建、修改
和删除等。以下代码在数据库中创建了一个表。
CREATE TABLE MyTable
(user_id smallint,
username char(22),
password char(22),
email char(30));
以下代码对上面创建的表进行了修改操作,增加了一个新列。
ALTER TABLE MyTable
ADD tel_no char(22);
以下代码将删除上面创建的表。
DROP TABLE MyTable;
可以看到,上面的三条 SQL 语句实现了对数据库中元素的创建、修改和删除。对于其他数据库元
素均可以使用相似的方法来完成。
2 .数据管理语言(DML )
DML 是用于数据库中数据管理的语言,主要用于数据库中数据的查询、插入、修改和删除等。例
如,以下代码向数据库中的MyTable 中插入了一条数据。
第22 章 不同数据库的差异 ·355 ·
INSERT INTO MyTable
VALUES(100001, ‘Simon’, ‘123456’, ‘pch1982cn@’);
以下代码对这条数据进行了修改。
UPDATE MyTable
SET username = “Elaine”
WHERE user_id = 100001;
以下代码删除了这条数据。
DELETE FROM MyTable
WHERE user_id = 100001;
以下代码从数据库中查询这条数据。
SELECT * FROM MyTable
WHERE user_id = 100001;
上面的例子均为ANSI SQL 的典型例子,在前面的章节中已经介绍过了。对于大多数关系型数据库
产品来说,均可以使用ANSI SQL 对数据库进行一般性操作。
1.1.2 MySQL 对 ANSI SQL 扩充
MySQL 包含了一些在ANSI SQL 中找不到的功能。本小节将简要介绍其中的几项。
1.注释
由于使用MySQL 专门的 SQL 语句将导致 SQL 语句不再与其他的数据库管理系统兼容。因此,
MySQL 提供了一种注释形式,可以使用“/*! … */ ”形式的注释将MySQL 专门的代码写在注释内。这
样,在其他的数据库管理系统上运行SQL 时将不会被运行,而在MySQL 中,注释内的代码也将被MySQL
执行。例如以下代码将TEMPORARY 关键字放入了注释中。
CREATE /*! TEMPORARY */ TABLE MyTable (col1 int);
这时,在MySQL 中实际上执行的SQL 语句是没有注
文档评论(0)