本专栏目录
第1课 SQL入门之了解SQL
第2课 SQL入门之检索数据
第3课 SQL入门之排序检索数据
第4课 SQL入门之过滤数据
第5课 SQL入门之高级数据过滤
第6课 SQL入门之用通配符进行过滤
第7课 SQL入门之创建计算字段
第8课 SQL入门之使用数据处理函数
第9课 SQL入门之汇总数据
第10课 SQL入门之分组数据
第11课 SQL入门之使用子查询
第12课 SQL入门之联结表
第13课 SQL入门之创建高级联结
第14课 SQL入门之组合查询
第15课 SQL入门之插入数据
第16课 SQL入门之更新和删除数据
第17课 SQL入门之创建和操纵表
第18课 SQL入门之使用视图
第19课 SQL入门之使用存储过程
第20课 SQL入门之管理事务处理
第21课 SQL入门之使用游标
第22课 SQL入门之高级SQL特性
附录A SQL入门之SQL样例表脚本
附录B SQL入门之SQL流行的应用程序
附录C SQL入门之SQL语句的语法
附录D SQL入门之SQL数据类型
附录E SQL入门之SQL保留字
文章目录
- 本专栏目录
- B.1 使用Apache Open Office Base
- B.2 使用Adobe ColdFusion
- B.3 使用IBM DB2
- B.4 使用MariaDB
- B.5 使用Microsoft Access
- B.6 使用Microsoft ASP
- B.7 使用Microsoft ASP.NET
- B.8 使用Microsoft Query
- B.9 使用Microsoft SQL Server(包括Microsoft SQL Server Express)
- B.10 使用MySQL
- B.11 使用Oracle
- B.12 使用Oracle Express
- B.13 使用PHP
- B.14 使用PostgreSQL
- B.15 使用SQLite
- B.16 配置ODBC数据源
正如第1课所述,SQL不是一个应用,而是一种语言。要学习本书中的例子,你需要一个支持SQL语句执行的应用程序。
本附录描述了在几个最常用的应用中执行SQL语句的步骤。
你可以使用下面列出的任何一个应用或其他应用来测试和试验SQL代码。那么,究竟应该使用哪个呢?
- 许多DBMS具有自己的客户端实用程序,它们通常是很好的学习出发点。但有些没有直观的用户界面。
- 如果你是一位Web开发人员,那么可以使用任何服务器端Web编程语言,包括ASP.NET、ColdFusion、Java、JSP、PHP、Python和Ruby on Rails。
B.1 使用Apache Open Office Base
Apache Open Office Base是一个基于Java的开源客户端数据库应用。Open Office Base查询可以使用SQL直接编写。为此,要执行如下步骤。
- 在Open Office Base中打开数据库。
- 选择左侧Database面板中的Queries。
- 在Tasks面板,点击Create Query In SQL View以显示Query Design窗口。
- 在大文本框(整个窗口都是文本框)中输入SQL语句。
- 执行SQL语句,点击Run Query按钮(有文档和绿色对钩的按钮)。也可以按F5或从Edit菜单选择Run Query,执行SQL语句。
B.2 使用Adobe ColdFusion
Adobe ColdFusion是一个Web应用开发平台。ColdFusion使用一个基于标签的语言来创建脚本。为测试SQL,需要创建一个可从Web浏览器调用执行的简单页面。执行以下步骤。
- 在从ColdFusion代码内使用任意数据库之前,必须定义一个数据源。ColdFusion Administrator程序提供了一个定义数据源的基于Web的界面(如果需要帮助,请参阅ColdFusion文档)。
- 创建新的ColdFusion页(用CFM扩展)。
- 使用CFML 和标签创建一个查询块。用NAME属性命名它并在DATASOURCE属性中定义Data Source。
- 在和标签之间输入SQL语句。
- 使用或循环显示查询结果。
- 在Web服务器根目录下的任意可执行目录中保存此页面。
- 通过从Web浏览器中调用此页面执行它。
B.3 使用IBM DB2
IBM的DB2是一个强有力的高端多平台DBMS。它带有一整套可用来执行SQL语句的客户端工具。下面的说明使用基于Java的Control Center实用程序,因为它是最简单且最通用的绑定应用程序。
- 运行Control Center。
- 左侧的Object View列出了所有可用的数据库,展开All Databases,选择你需要的数据库。
- 在选择的数据库上点击右键并选择Query,或者(虽然它被选中)从Selected菜单选择Query。
- 在上面的框中输入SQL语句。
- 点击Execute按钮(有绿色朝右箭头的按钮),执行这个脚本。
- 下面的窗口会显示状态信息,切换到Query Results标签页,可以以网格形式显示结果。
B.4 使用MariaDB
MariaDB没有自己的客户端实用程序,而是使用MySQL的客户端实用程序(完全兼容)。请参阅B.10节。
B.5 使用Microsoft Access
Microsoft Access通常用来交互式地创建和管理数据库,并且交互式地处理数据,Access给出Query Designer,可用来交互式地建立SQL语句。Query Designer的一个相当有用的特性是,它也允许给出直接执行的SQL。为使用这个特性,进行如下操作。
- 运行Microsoft Access。它将提示你打开(或创建)数据库。打开要使用的数据库。
- 在Database窗口中选择Queries,然后单击New按钮并选择Design View。
- 出现Show Table对话框,关闭此窗口,不选择任何表。
- 从View菜单选择SQL View显示Query窗口。
- 在Query窗口中输入要执行的SQL语句。
- 单击Run按钮(有红惊叹号的那个)执行SQL语句。这将切换视图到Datasheet View(它将在网格中显示结果)。
- 根据需要在SQL View和Datasheet View间切换(为改动SQL语句,需返回到SQL View)。还可以使用Design View交互式地建立SQL语句。
B.6 使用Microsoft ASP
Microsoft ASP是创建基于Web应用的脚本平台。在ASP页内测试SQL语句,必须创建一个通过从Web浏览器调用来执行的页面。下面是在ASP页面内执行SQL语句所需的步骤:
- ASP使用ODBC与数据库交互,因此在继续进行之前必须给出ODBC数据源(请参阅本附录最后面的内容)。
- 用任意文本编辑器创建新ASP页面(带ASP扩展)。
- 使用Server.CreateObject创建ADODB.Connection对象的一个实例。
- 使用Open方法打开所需的ODBC数据源。
- 将SQL语句传递到一个对Execute方法的调用。Execute方法返回结果集。使用Set命令将返回的结果保存到结果集。
- 为显示结果,应该对检索出的数据应用<% Do While NOT EOF %>循环。
- 在Web服务器根目录下的任意可执行目录中保存此页面。
- 通过从Web浏览器调用,执行此页面。
B.7 使用Microsoft ASP.NET
Microsoft ASP.NET是一个使用.NET框架,创建基于Web应用的脚本平台。在ASP.NET页面内测试SQL语句,必须创建一个可通过从浏览器调用来执行的页面。有多种方法完成这项工作,下面是其中的一种方法。
- 创建一个带.aspx扩展的新文件。
- 用SqlConnection()或OleDbConnection()创建数据库连接。
- 使用SqlCommand()或OleDbCommand()给DBMS传递语句。
- 用ExecuteReader创建一个DataReader。
- 对返回的读入器(reader)循环以获得返回值。
- 在Web服务器根目录下的任意可执行目录中保存页面。
- 通过从Web浏览器调用页面执行它。
B.8 使用Microsoft Query
Microsoft Query是一个独立的SQL查询工具,也是一个对ODBC数据源测试SQL语句的理想实用程序。大多数Windows安装程序不安装Microsoft Query,不过,它可以与其他Microsoft产品以及第三方产品一起选择安装。如果你的计算机上存在就可以使用。
提示:获得MS-Query
MS-Query通常与Office等其他微软产品一起安装,虽然它只能在进行完整安装时安装。如果Start按钮上没有给出,可用Start
Find在系统上查找它(不管你是否知道,一般都会给出它)。要查找的文件为MSQRY32.EXE或MSQUERY.EXE。
使用Microsoft Query,进行如下操作。
- Microsoft Query使用ODBC与数据库打交道,因此在可以继续进行之前必须给出ODBC数据源(参见B.16的说明)。
- 使用Microsoft Query之前,必须在计算机上安装它。请浏览Start按钮下的程序组找到它。
- 从File菜单中,选择Execute SQL,显示Execute SQL窗。
- 单击Data Sources按钮选择所要的ODBC数据源。如果所需的数据源未列出,单击Other寻找。选择了合适的数据源后,单击Use按钮。
- 在SQL Statement框中输入SQL语句。
- 单击Execute执行SQL语句并显示返回数据。
B.9 使用Microsoft SQL Server(包括Microsoft SQL Server Express)
Microsoft SQL Server给出了一个称为SQL Server Management Studio的强大管理工具。这个工具用来管理数据库、管理安全、制作报表等各种工作,给出了编写和测试SQL语句的理想环境。以下说明如何使用SQL Server Management Studio。
- 运行SQL Server Management Studio。
- 如果需要,提供服务器和登录信息。
- SQL Server Management Studio会展示多个面板。左侧的Object Explorer列出了所有的数据库及其详细信息,上面的工具条包含功能按钮,最大的文本区域用于输入SQL语句。
- 工具条下方左侧的下拉选择框显示当前的数据库,也允许改变数据库。(做出选择在功能上等同于发出一条USE语句。)确保你使用的数据库是正确的,如果需要就切换数据库。
- 在文本区域输入SQL语句,然后点击Execute Query按钮(有红色感叹号的),执行它(还可按F5或从Query菜单选择Execute)。
- 结果将显示在SQL窗下的独立窗格中。
- 单击查询屏幕底部的标签页,在查看数据与查看返回消息和信息之间切换。
B.10 使用MySQL
有两种方式使用MySQL。DBMS带有一个名为mysql的命令行实用程序。这是一个纯文本工具,通常作为MySQL安装程序的一部分来安装,用来执行任何SQL语句。另外,MySQL的创建者发布了一个名为MySQL Workbench的交互工具,通常需要独立下载和安装,所以它不会出现在其他安装程序中。学习MySQL时,强烈推荐使用它。
从命令行使用mysql,进行如下操作。
-
输入mysql运行实用程序。根据如何定义安全性,可能需要使用-u和-p参数指定登录信息。
-
在mysql>提示下输入USE database打开数据库,例如USE tysql就是打开tysql数据库。
-
在mysql>提示下输入SQL语句,每条语句必须以分号(;)结束。结果将显示在屏幕上。
-
为可能使用的命令列表输入\h,为状态信息输入\s(包括MySQL版本信息)。
-
输入\q退出mysql实用程序。
使用MySQL Workbench,进行如下操作。
-
运行MySQL Workbench。
-
MySQL Workbench的最左侧列出了可用的MySQL数据库连接,允许你访问它们。点击任何连接就可以打开这个数据库;如果数据库没有在此列出,请选择New Connection。
-
一旦连接,就会显示多个窗口。左侧的Object Browser列出了可用的数据库,中间是用于输入SQL语句的大的文本编辑器,结果或信息显示在下方。
-
点击+SQL按钮,打开新的SQL窗口。
-
输入SQL语句后,点击Execute(有闪电图片的那个)运行SQL。结果显示在下面。
B.11 使用Oracle
Oracle有一大套工具和客户端。学习SQL时首选Oracle SQL Developer,它可以与MySQL DBMS一起安装,也可以独立下载并安装。下面介绍如何使用此工具。
- 运行Oracle SQL Developer(Windows用户需要使用提供的批处理文件运行,不能通过应用本身运行)。
- 在使用数据库前,你需要定义一个连接。这可以使用左侧Connections面板中的选项完成。
- 连接完成后,使用SQL Worksheet标签页,在Query Builder屏幕中输入SQL语句。
- 执行SQL语句,单击Execute按钮(带闪电图形)。结果将显示在下面的面板中。
B.12 使用Oracle Express
Oracle Express是一种强有力、易于使用的DBMS,有着非常直观、基于Web的用户界面。一旦安装了Oracle Express,就会有个Getting Started来启动Web页面管理,也可以使用该页面来运行SQL命令。为此,要按以下步骤操作。
- 运行Oracle Express管理Web页面。
- 出现提示,使用安装时的用户名和密码登录。
- 登录后可以看到一系列图标,包括一个含单词SQL的屏幕图片。点击这个图标可以访问选项。
- 第一个图标是SQL Commands,可用来输入SQL语句。(第二个图标是SQL Scripts,执行已经编写的SQL脚本时很有用,像创建和填充本书可用的脚本。)点击SQL Commands图标,打开SQL Commands窗口。
- 在屏幕上方输入SQL语句。
- 执行SQL查询,点击右上方的Run按钮。结果显示在SQL语句之下。
B.13 使用PHP
PHP是一个流行的Web脚本语言。它提供了用来连接各种数据库的函数和库,因此,用来执行SQL语句的代码可根据所用(以及如何访问)的DBMS而变化。因而,这里无法提供用于各种DBMS和各种情形的步骤,只提供一个使用MySQL的一般例子。关于如何连接到具体的DBMS的介绍,请参阅PHP文档。
- 创建一个新的PHP页面(和一个PHP扩展)。
- 使用适当的函数连接数据库。使用mysql_connect()连接MySQL数据库。
- 将SQL语句传给适当的查询函数。针对MySQL,使用mysql_query()。
- 返回一组结果,循环遍历它们以显示。
- 将页面保存在Web服务器根目录下的任何可执行目录中。
- 通过从Web浏览器调用来执行页面。
B.14 使用PostgreSQL
有两种方式使用PostgreSQL。DBMS带有一个名为psql的命令行实用程序,这是一个纯文本工具,通常与PostgreSQL一起安装,用来执行任意SQL语句。另外,有一个名为pgAdmin的交互工具,主要用于DBMS管理,可测试SQL语句。
使用psql,进行如下操作。
-
输入psql运行此实用程序。加载一个特定的数据库,请在命令行上指定它,格式为:psql database(PostgreSQL不支持USE命令)。
-
在=>提示下输入要执行的SQL语句,每条语句以分号(;)结束。结果将显示在屏幕上。
-
输入?,可列出可能用到的命令。
-
输入\h,可得到SQL帮助;输入\h statement(如\h SELECT),可得到特定SQL语句的帮助。
-
输入\q退出psql实用程序。
使用pgAdmin,进行如下操作。
-
运行pgAdmin(它也可能称为pgAdmin III)。
-
如果出现提示,提供登录信息。
-
pgAdmin会在左侧列出数据库服务器。选择要使用的数据库,pgAdmin将连接它,并显示服务器信息。
-
然后选择实际的数据库 (这样做,工具栏按钮即可使用了)。
-
定位Execute Arbitrary SQL Queries按钮(是的,这确实是它的名字,它是那个包含单词SQL的放大镜图片)。
-
将显示一个新的屏幕。确保要用的数据库列在了右上方的下拉选择框中。
-
现在可以在屏幕上方的大文本框中输入SQL语句了。
-
点击Execute Query按钮(有绿色向右箭头的那个),执行SQL语句。结果显示在下面。
B.15 使用SQLite
SQLite通常在其他语言和应用程序中使用,不作为单独的数据库使用。然而,SQLite确实有一个命令行实用程序,可以用来执行SQLite数据库的语句。SQLite命令行实用程序称为sqlite3(或Windows上的sqlite3.exe)。从命令行使用sqlite3,要进行如下操作。
- 理想情况下,sqlite3和数据库可以放在同一文件夹下。( SQLite数据库包含在有.sqlite或.db扩展名的单独文件中,但事实上可以是任意扩展名,或者没有扩展名。)
- 输入sqlite3 database.sqlite(用实际的数据库文件名替换database.sqlite)。
- 可以看到sqlite>提示符,在此输入SQL语句。所有语句必须用分号(;)结束。
- 默认情况下,sqlite3用列之间的管道字符显示返回的数据,且没有标题。要改变这种行为,输入.mode column并按回车,然后输入.header on并按回车。
- 输入.quit并按回车,退出sqlite3。
B.16 配置ODBC数据源
上面描述的几个应用程序使用了ODBC进行数据库集成,因此,这里简要概述一下ODBC,以及配置ODBC数据源的指令。
ODBC是一个标准,能使客户端应用与不同的后端数据库或基础数据库引擎交互。使用ODBC,能够在一个客户端中编写代码,并使前述各种工具与几乎所有数据库或DBMS交互。
ODBC本身不是数据库,但它包装了数据库,使所有数据库以一致和清晰定义的方式工作。它利用具有两种主要功能的软件驱动程序实现这一点。首先,它们封装数据库的本身特性或特色,并对客户端隐藏它们。其次,它们提供一种常用的语言与这些数据库交互(在需要时进行转换)。ODBC所用的语言就是SQL。
ODBC客户端应用程序并不直接与数据库交互,而是与ODBC数据源交互。数据源是一个逻辑数据库,包括驱动程序(每种类型的数据库有自己的驱动程序)和如何连接到数据库的信息(文件路径、服务器名等)。
定义了ODBC数据源后,任何兼容ODBC的应用程序都可以使用这些数据源。ODBC数据源并不针对具体的应用程序,它们针对的是系统。
警告:ODBC的差别
存在许多不同的ODBC程序版本,因此不可能提供适用于所有版本的指令。在设置具体的数据源时,应该密切注意具体的提示。
ODBC数据源用Windows Control Panel的ODBC程序来定义。设置ODBC数据源,进行如下操作。
- 打开Windows Control Panel的ODBC程序。
- 大多数ODBC数据源应该设置为系统范围的数据源(相对于用户专用的数据源),因此,如果可以,应该选择System DSN。
- 单击Add按钮添加新的数据源。
- 选择要使用的驱动程序。通常有一组默认的驱动程序,支持主要的微软产品。你的系统上也可以安装其他驱动程序。必须选择一个与将要连接到的数据库类型相匹配的驱动程序。
- 系统根据数据库或DBMS的类型,提示输入服务器名或文件路径信息,以及可能的登录信息。根据要求提供这些信息,然后遵循其他提示创建数据源。
上一篇:附录A SQL入门之SQL样例表脚本
下一篇:第2课 SQL入门之检索数据