计算机实用技术(Part) 3.为什么学习S? SL被运用于100多种软件产品中。一旦学会了SQL,你将能够使用所有这些 产品。当然,你需要稍微了解一下每种产品的特性,很快你就会感觉到它们很熟 悉并且知道如何使用。你可重复使用这些技巧。 主要SQL产品 其他SQL产品(和基于SQL的产品) MYSQL Microsoft access IBM DB2 Cold fusion Microsoft SQL Se Informix Business objects SQL Windows ODBC Sybase Ingres SAS sql procedure Ocelot SQL OsloData dB Tandem SQL Rapid SQL XDB SQL/DS Mini SQL Empress nterbase ogress p SQL Report Wri Paradox Delphi VAX SQL Essbase Beagle SQL GNU SQL Server Just logic/SQL Primebase Altera erver PowerBuilder SL被广泛使用的原因之一是:相对于其他许多计算机语言来说,SQL易于学 习。另一个原因是:它打开了关系数据库的大门,而关系数据库提供了许多便利。 一些人说:SL是关系数据库最好的特性,并且SQL是关系数据库获得成功的原因
计算机实用技术(Part II) 3. 为什么学习SQL? SQL被运用于100多种软件产品中。一旦学会了SQL,你将能够使用所有这些 产品。当然,你需要稍微了解一下每种产品的特性,很快你就会感觉到它们很熟 悉并且知道如何使用。你可重复使用这些技巧。 主要SQL产品 其他SQL产品(和基于SQL的产品) Oracle MYSQL Microsoft Access SQLbase IBM DB2 Cold Fusion Microsoft SQL Server SAP Informix Business Objects SQL Windows ODBC Sybase Ingres SAS sql procedure Ocelot SQL Foxpro OsloData dBase PostgreSQL Tandem SQL Rapid SQL XDB SQL/DS Mini SQL Empress Interbase Progress Supra SQL Report Writer Paradox Delphi VAX SQL Essbase Beagle SQL GNU SQL Server Just Logic/SQL PrimeBase Altera SQL Server DataScope PowerBuilder SQL被广泛使用的原因之一是:相对于其他许多计算机语言来说,SQL易于学 习。另一个原因是:它打开了关系数据库的大门,而关系数据库提供了许多便利。 一些人说:SQL是关系数据库最好的特性,并且SQL是关系数据库获得成功的原因。 - 6 -
计算机实用技术(Part) 而另一些人说:是关系数据库使得SQL成功。大部分人同意SQL和关系数据库是 个成功组合的观点。 SL是最成功的说明性计算机语言——一种你可以对它说你想要什么,而不 是告诉它如何得到你想要东西的语言。虽然也有其他一些说明性语言和报告生成 工具,但它们大部分在功能上有更多的限制。SQL更强大,可以应用于更多的场 合 在SL基础上易于构建最终用户程序,帮助不懂SQL语言的用户从数据库中获 得信息 4SQ语句的分类 SQL使用一种很简单的语法,易于学习和使用。SQL语句可分为5类,简要概 括如下: ●查询语句用于检索数据库表中存储的行。可以使用SQL的 SELECT语句 编写查询语句 ●数据操纵语言 ata Manipulation language,DM)语句用于修改表 的内容。DML语句有3种: · INSERT向表中添加行。 · UPDATE修改行的内容。 DELETE删除行 ●数据定义语言( Data Definition language,DDL语句用于定义构成 数据库的数据结构,例如表。DDL语句有5种基本类型: CREATE创建数据库结构。例如, CREATE TABLE语句用于创建一个 表; CREATE USER用于创建一个数据库用户。 · ALTER修改数据库结构。例如, ALTER TABLE语句用于修改一个表。 DROP删除数据库结构。例如, DROP TABLE语句用于删除表。 · RENAME更改表名。 TRUNCATE删除表的全部内容 事务控制( Transaction Control,TC)语句用于将对行所作的修改永 久性地存储到表中,或者取消这些修改操作。TC语句有3种
计算机实用技术(Part II) 而另一些人说:是关系数据库使得SQL成功。大部分人同意SQL和关系数据库是一 个成功组合的观点。 SQL是最成功的说明性计算机语言——一种你可以对它说你想要什么,而不 是告诉它如何得到你想要东西的语言。虽然也有其他一些说明性语言和报告生成 工具,但它们大部分在功能上有更多的限制。SQL更强大,可以应用于更多的场 合。 在SQL基础上易于构建最终用户程序,帮助不懂SQL语言的用户从数据库中获 得信息。 4. SQL语句的分类 SQL使用一种很简单的语法,易于学习和使用。SQL语句可分为5类,简要概 括如下: ● 查询语句 用于检索数据库表中存储的行。可以使用SQL的SELECT语句 编写查询语句。 ● 数据操纵语言(Data Manipulation Language, DML)语句 用于修改表 的内容。DML语句有3种: · INSERT 向表中添加行。 · UPDATE 修改行的内容。 · DELETE 删除行。 ● 数据定义语言(Data Definition Language, DDL)语句 用于定义构成 数据库的数据结构,例如表。DDL语句有5种基本类型: · CREATE 创建数据库结构。例如,CREATE TABLE 语句用于创建一个 表;CREATE USER 用于创建一个数据库用户。 · ALTER 修改数据库结构。例如,ALTER TABLE 语句用于修改一个表。 · DROP 删除数据库结构。例如,DROP TABLE 语句用于删除表。 · RENAME 更改表名。 · TRUNCATE 删除表的全部内容。 ● 事务控制(Transaction Control, TC)语句 用于将对行所作的修改永 久性地存储到表中,或者取消这些修改操作。TC语句有3种: - 7 -
计算机实用技术(Part) COMMIT永久性地保存对行所作的修改。 ROLLBACK取消对行所作的修改。 SAVEBACK设置一个“保存点”,可以将对行所作的修改回滚到此处。 ●数据控制语言( Data Control language,DCL)语句用于修改数据库结 构的操作权限。DCL语句有2种 GRANT授予用户对数据库结构(例如表)的访问权限。 REVOKE收回用户对数据库结构(例如表)的访问权限。 有很多方法都可以运行SL语句,并从数据库中返回结果,其中包括使用 Oracle forms、 Delphi、 PowerBuilder等设计的程序;还可以通过JDBC在Java 程序中加入SQL语句。 0 racle还有一个名为SL*Plus的工具,可以使用这个工具从键盘输入SQL语 句,或者提供一个包含SQL语句的文件,并在SQL*Plus中运行这些语句。通过 SL*Plus,可以与数据库进行“对话”,因为可以输入SL语句,并查看数据库 所返回的结果 5.使用SQL*Pus SQL*Plus有两个版本:一个是 Windows版本,另外一个是命令行版本。可以 在任何 Oracle数据库的操作系统上使用命令行版本的SQL*Plus ●启动 Windows版本的SQL*Plus 如果使用 Windows操作系统,双击桌面的SQL*Plus 图标,或单 击开始菜单,并选择程序| Oracle| Application Development|SQL*Plus来启动SQL*Plus(如图1) Applicati on Development IRTYPE File Assistant a Configuration and Migration Tools a Oracle Objects for OLE Class Library Help Enterprise Management Packs Oracle Objects for OLE Help C Enterprise Manager Quick Tours e Oracle Objects forOLE Readme t tool a orAcle HttP Server a OraOLEDB Documentation Release documentati on COT Dl 图1从 程序菜单启动SQL*Plus 8
计算机实用技术(Part II) · COMMIT 永久性地保存对行所作的修改。 · ROLLBACK 取消对行所作的修改。 · SAVEBACK 设置一个“保存点”,可以将对行所作的修改回滚到此处。 ● 数据控制语言(Data Control Language, DCL)语句 用于修改数据库结 构的操作权限。DCL 语句有2种: · GRANT 授予用户对数据库结构(例如表)的访问权限。 · REVOKE 收回用户对数据库结构(例如表)的访问权限。 有很多方法都可以运行SQL语句,并从数据库中返回结果,其中包括使用 Oracle Forms、Delphi、PowerBuilder等设计的程序;还可以通过JDBC在Java 程序中加入SQL语句。 Oracle还有一个名为SQL*Plus的工具,可以使用这个工具从键盘输入SQL语 句,或者提供一个包含SQL语句的文件,并在SQL*Plus中运行这些语句。通过 SQL*Plus,可以与数据库进行“对话”,因为可以输入SQL语句,并查看数据库 所返回的结果。 5. 使用SQL*Plus SQL*Plus有两个版本:一个是Windows版本,另外一个是命令行版本。可以 在任何Oracle数据库的操作系统上使用命令行版本的SQL*Plus。 ● 启动Windows版本的SQL*Plus 如果使用Windows操作系统,双击桌面的SQL*Plus 图标,或单 击 开始 菜单,并选择 程序 | Oracle | Application Development | SQL*Plus 来启动SQL*Plus(如图 1 )。 图1 从 程序菜单启动SQL*Plus - 8 -
计算机实用技术(Part) 图2显示了在 Windows操作系统上运行S*Plus时出现的 Log on对话框。在用户 名称( User name)中输入:s30101,在口令( Password)中输入: student,主机字 符串( Host string)输入: oracle9i用来告诉SQL*Plus数据库在哪里运行,然 后单击确定。 登录 用户名称凹 s40101 令凹 主机字符串凹: oracle gi 取消 图2SQL*Plus登录窗口 成功登录到数据库中之后,就会看到SQL*Plus窗口,可以通过这个窗口与数据库 进行交互。SQL*Plus窗口如图3所示。 土0lSqL未】s 文件)编描)索()选项0)帮助Q Plus: Release9.2.01..- Production on星期三11月216:12:u2005 Copyright (c)1982, 2002, Oracle Corporation. All rights reserved 9.2.0.1.0- Production 图3SQL*P1us
计算机实用技术(Part II) 图 2 显示了在Windows操作系统上运行SQL*Plus时出现的Log On对话框。在用户 名称(User Name)中输入:s30101,在口令(Password)中输入:student,主机字 符串(Host String) 输入:oracle9i 用来告诉SQL*Plus数据库在哪里运行,然 后单击 确定。 图 2 SQL*Plus登录窗口 成功登录到数据库中之后,就会看到SQL*Plus窗口,可以通过这个窗口与数据库 进行交互。SQL*Plus窗口如图 3 所示。 图 3 SQL*Plus - 9 -
计算机实用技术(Part) ●启动命令行版本的SQL*P1us 要启动命令行的SQL*P1us,可以使用 sqlplus命令。 sqlplus命令的完整语法 如下: Sqlplus [user name[/password [@host sting]]] 其中: ser name指定数据库的用户名。 password指定该数据库用户的密码。 · host string指定要连接的数据库 下面是执行 sqlplus命令的例子: sqlplus s30101/student@oracle9i ●使用SoL*Plus执行 SELECT语句 使用SQL*Plus登录到数据库之后,输入下面的 SELECT语句,会返回数据库中 的当前时间: SELECT SYSDATE FRoM dual SYSDATA是一个内置 Oracle函数,它返回当前日期,dua1表是 Oracle的 个内置表,该表只包含一行可以使用dua1表来执行一些简单的查询,这些查询的 结果并非从特定表中获得 SQL> SELECT sysdate 2 FROM dual; SYSDATE 27-SEP-05 SOL> 通过输入EIT命令,可以编辑SQL*Plus中的最后一条SQL语句。在输错SQL 语句或想修改SαL语句时,这种功能非常有用。在 Windows系统中输入EDⅠT命令后, 就会启动记事本,然后就可以使用记事本来编辑SQL语句。在退出记事本并保存 SL语句时,SQL语句就会被传递到SQL*Plus中,可以用/重新执行该条SQL语句
计算机实用技术(Part II) ● 启动命令行版本的SQL*Plus 要启动命令行的SQL*Plus,可以使用sqlplus命令。sqlplus命令的完整语法 如下: Sqlplus [user_name[/password[@host_sting]]] 其中: · user_name 指定数据库的用户名。 · password 指定该数据库用户的密码。 · host_string 指定要连接的数据库。 下面是执行sqlplus命令的例子: sqlplus s30101/student@oracle9i ● 使用SQL*Plus执行SELECT 语句 使用SQL*Plus登录到数据库之后,输入下面的SELECT语句,会返回数据库中 的当前时间: SELECT SYSDATE FROM dual; SYSDATA 是一个内置Oracle 函数,它返回当前日期,dual 表是Oracle的一 个内置表,该表只包含一行可以使用dual表来执行一些简单的查询,这些查询的 结果并非从特定表中获得。 SQL> SELECT sysdate 2 FROM dual; SYSDATE --------- 27-SEP-05 SQL> 通过输入EDIT命令,可以编辑SQL*Plus中的最后一条SQL语句。在输错SQL 语句或想修改SQL语句时,这种功能非常有用。在Windows系统中输入EDIT命令后, 就会启动记事本,然后就可以使用记事本来编辑SQL语句。在退出记事本并保存 SQL语句时,SQL语句就会被传递到SQL*Plus中,可以用/重新执行该条SQL语句。 - 10 -