本教程描述如何使用 Oracle Developer Tools For Visual Studio .NET 构建 .NET 应用程序。
大约 30 分钟
本教程包括下列主题:
| 概述 | ||
| 前提条件 | ||
| 创建 Oracle 连接 | ||
| 创建表 | ||
| 查看表中的数据 | ||
| 自动生成代码 | ||
| 使用存储过程 | ||
| 使用查询窗口 | ||
| 总结 | ||
将鼠标置于此图标上可以加载和查看本教程的所有屏幕截图。
(警告:因为此操作会同时加载所有屏幕截图,所以网速较慢时,响应时间可能会比较长。)
注意:此外,您还可以在下列步骤中将鼠标放在每个单独的图标上,从而仅加载和查看与该步骤相关的屏幕截图。可以通过单击各个屏幕截图来将其隐藏。
新的 Oracle Developer Tools for Visual Studio .NET 是 Visual Studio .NET 的一个紧密集成的“插件”,它将 Oracle 数据库的功能带给了 .NET 开发人员!由于它对于数据库开发人员来说完全直观,所以采用它后可立即提升您的生产效率。如果您刚接触 Oracle 开发,这将一个很好的入门途径!
使用 Oracle Explorer 浏览您的 Oracle 模式,使用众多强大的设计工具和向导之一来创建和改变模式对象,以及将模式对象拖放到您的表单上以自动生成代码。
此外,还有 PL/SQL 编辑器、Adhoc SQL 查询窗口以及集成的上下文相关的联机帮助,包括《Oracle SQL 和 PL/SQL 用户指南》。借助 Oracle 数据窗口,您无需离开 Visual Studio 环境即可执行日常数据库任务,如插入和更新 Oracle 数据或测试存储过程!
这些以及其他许多特性都大大提高了开发人员的生产效率,并使得 Windows 上的 Oracle 开发易于学习!
开始本教程之前,您应该:
| 1. | |
| 2. | |
| 3. | 完成了教程配置 .NET 存储过程环境。 |
开始创建应用程序之前,您应打开 Visual Studio 并检查界面。执行以下步骤:
| 1. | 选择 开始 > 程序 > Microsoft Visual Studio .NET > Microsoft Visual Studio .NET。
|
|
| 2. | 选择 View > Oracle Explorer。
|
|
| 3. | 单击 + 图标添加连接。
|
|
| 4. | 输入数据源名称。为 User name 和 Password 输入 hr,然后单击 Save password 并单击 Test connection。
|
|
| 5. | 测试连接成功。单击 OK。
|
|
| 6. | 单击 OK。
|
|
| 7. | 连接已创建。
|
|
现在,您将创建一个名为 DEPENDENTS 的新表,它包含 EMPLOYEES 表的一个外键。
| 创建列 | ||
| 创建索引 | ||
| 创建外键 | ||
要在表中创建列,执行以下步骤:
| 1. |
展开 hr.ORCL。右键单击 Tables,然后选择 New Relational Table...。
|
|
| 2. |
输入 DEPENDENTS 作为表名,然后在列部分单击 Add。
|
|
| 3. |
输入 FIRSTNAME 作为名称,选择 VARCHAR2 作为数据类型,并输入 30 作为大小。然后,单击 Add。
|
|
| 4. |
输入 LASTNAME 作为名称,选择 VARCHAR2 作为数据类型,并输入 30 作为大小。然后,单击 Add。
|
|
| 5. | 输入 BIRTHDATE 作为名称,然后选择 DATE 作为数据类型。然后,单击 Add。
|
|
| 6. |
输入 RELATIONSHIP 作为名称,选择 VARCHAR2 作为数据类型,并输入 20 作为大小。然后,单击 Add。
|
|
| 7. |
为 Name 输入 EMPLOYEEID,为 Data type 选择 NUMBER,取消选中 Allow null,然后为 Precision 输入 6,为 Scale 输入 0。然后,单击 Add。
|
|
| 8. | 为 Name 输入 DEPENDENTID,为 Data type 选择 NUMBER,取消选中 Allow null,然后为 Precision 输入 6,为 Scale 输入 0。然后,单击 Preview SQL。
|
|
| 9. |
此处是创建表之后将执行的 SQL。单击 OK。
|
|
| 10. | 单击 Save。注意:由于语句已经执行,因此预览 SQL 不再可用。现在,您可以创建索引了。
|
|
要创建表的索引,执行以下步骤:
| 1. | 单击 Indexes 选项卡。
|
|
| 2. | 单击 Add。
|
|
| 3. | 输入 DEPENDENTS_INDX 作为名称,然后在索引键区域单击 Add。
|
|
| 4. | 选择 DEPENDENTID 作为键,然后单击 Save。此时,您的索引已创建完成。
|
|
要创建表的外键,执行以下步骤:
| 1. | 单击 Constraints 选项卡。
|
|
| 2. | 单击 Add。
|
|
| 3. | 输入 EMPLOYEES_FK 作为名称,选择 Foreign Key 作为类型,选择 EMPLOYEES 作为表,然后选择约束 EMP_EMP_ID_PK。选择 EMPLOYEE_ID 作为参考列,然后选择 EMPLOYEEID 作为本地列。然后,单击 Add。
|
|
| 4. | 输入 DEPENDENTS_PK 作为名称,选择 Primary Key 作为类型,然后单击 Add。
|
|
| 5. | 选择 DEPENDENTID 作为主键列。然后,单击 Save。
|
|
| 6. | 在 Oracle 资源管理器视图中,您可以查看表及其索引和约束。
|
|
通过执行以下步骤,您可以访问表中的数据
| 1. | 右键单击 DEPENDENTS 表,并选择 Retrieve Data...。
|
|
| 2. | 至少输入 4 行数据。确保输入有效的 Employee ID,然后单击 Save。
|
|
在本主题中,您将创建一个项目,并生成在 DEPENDENTS 表中显示数据的代码。执行以下步骤:
| 1. | 单击 Start Page 选项卡。
|
| 2. | 单击 New Project...
|
| 3. | 选择项目类型 Visual C# Projects,选择模板 Windows Application,输入名称 obe1,然后输入存储文件的目录(注意:如果该目录不存在,将会自动创建)。然后单击 OK。
|
| 4. | 在 Oracle 资源管理器窗口选择 DEPENDENTS 表,并将其拖放到右侧的 Form1 中。
|
| 5. | 单击 Yes 将连接口令保存到生成的代码中。
|
| 6. | 现在,您在表单下看到的图标表示当前自动生成的代码。需要特别指出的是,已经自动生成了 OracleDataAdapter 类,它是 Oracle Data Provider for .NET 的一部分。双击 dependentsOracleDataAdapter1 查看代码。
|
| 7. | 将显示带有已生成代码的表单。展开 Windows Form Designer 生成的代码。
|
| 8. | OracleDataAdapter 基于 ADO DataAdapter,ADO DataAdapter 经过特别的设计,可使用最少量的代码在数据库和表单上的小部件之间轻松地传递数据。OracleDataAdapter 类由 Oracle Data Provider for .NET(在安装 Oracle Developer Tools 时会自动安装)提供。单击 Form1.cs (Design) 选项卡。
|
| 9. | 单击类旁边的任意位置取消对它们的选择(类周围没有复选框)。
|
| 10. | 右键单击 dependentsOracleDataAdapter1,并选择 Generate Dataset...。
这将显示 Dependents11。
|
| 11. | 为了能够在您的应用程序中显示 Dependents 表中的数据,需要将 DataGrid 添加到工具箱中的表单。 选择 View,然后选择 Toolbox。
|
| 12. | 从 Windows 表单列表中选择 DataGrid,并将其拖放到 Form1 中。
|
| 13. | 如下图所示扩大 DataGrid。现在,需要将网格的数据源设置为 Oracle 数据源。从 View 下拉菜单中选择 Properties Window。如果属性窗口已经打开,该步骤不是必需的。
|
| 14. | 在 Data Source 属性的 Data 部分中,选择 dependents11.Dependents。
|
| 15. | 双击 Datagrid 以查看带有生成的代码的表单。
|
| 16. | 从成员列表中选择 DataGrid1。
|
| 17. | 在 InitializeComponent(); 后面输入以下代码 this.
您将看到可以从中进行选择的有效选项列表。选择 dependentsOracleData Adapter1。然后,输入或选择其余代码,如下所示: this.dependentsOracleDataAdapter1.Fill(this.dependents11.Dependents);
|
| 18. | 选择 Build > Build Solution。
|
| 19. | 检查输出区域,以确保没有收到任何错误消息。然后,选择 Debug > Start。
|
| 20. | 应用程序运行,并出现一个表单。表单中已填充了数据。检查数据,然后关闭窗口。
|
下面,您将创建并运行存储过程。
| 创建存储过程 | ||
| 编辑程序包主体 | ||
| 运行存储过程 | ||
| 1. | 从 Oracle Explorer 窗口中,右键单击 Packages 并选择 New Package。
|
|
| 2. | 接受默认的程序包名称,并单击 Methods 下面的 Add。
|
|
| 3. | 输入 GETCURSORS 作为方法名,选择 Procedure 作为方法类型,然后单击 Parameters 下面的 Add。
|
|
| 4. | 输入 MAXROWS 作为名称,然后单击 Add。
|
|
| 5. | 输入 EMPLOYEESCUR 作为名称,选择 OUT 作为方向,然后选择 SYS_REFCURSOR 作为数据类型。然后,单击 Add。
|
|
| 6. | 输入 DEPENDENTSCUR 作为名称,选择 OUT 作为方向,然后选择 SYS_REFCURSOR 作为数据类型。然后单击 OK。
|
|
| 7. | 单击 Preview SQL >> 以查看即将执行的 SQL。
|
|
| 8. | 查看 SQL 并单击 OK。
|
|
| 9. | 单击 OK 创建程序包。
|
|
| 1. | 程序包已经创建,程序包主体已经打开。如果您没有看到为程序包主体生成的代码,右键单击 Oracle Explorer 中的 PACKAGE1 程序包,并选择 Edit Package Body。向下滚动以查找行 NULL;
|
|
| 2. | 使用以下行替换 NULL; 行: OPEN EMPLOYEESCUR FOR SELECT * FROM EMPLOYEES; OPEN DEPENDENTSCUR FOR SELECT * FROM DEPENDENTS;
|
|
| 3. | 右键单击窗口选项卡并选择 Save。
|
|
| 1. | 在 Oracle 资源管理器窗口中展开程序包 PACKAGE1。右键单击 GETCURSORS 并选择 Run。
|
|
| 2. | 输入 999 作为 MAXROWS 参数值,然后单击 OK。
|
|
| 3. | 为 EMPLOYEESCUR 选择值。
|
|
| 4. | 将显示 Employees 光标的详细信息。为 DEPENDENTSCUR 选择值。
|
|
| 5. | 将显示 Dependents 光标的详细信息。
|
|
利用查询窗口,可以针对数据库中的数据运行一个或多个查询。执行以下步骤:
| 1. | 右键单击数据库连接 Hr.ORCL 并选择 Query Window。
|
|
| 2. | 输入 SQL 命令 SELECT * FROM DEPENDENTS; 并单击 Execute。
|
|
| 3. | 将显示结果。要格式化结果,右键单击查询区域,选择 Set Query Output > Text,然后再次单击 Execute。
|
|
| 4. | 现在,您一次可以执行多个 SQL 语句。添加 SQL 命令 SELECT * FROM EMPLOYEES;。要同时执行这两个语句,您需要选择这两个语句,然后单击 Execute。注意:如果没有同时选择这两个语句,则仅执行列表中的最后一个 SQL 语句。
|
|
| 5. | 向上滚动到输出顶部。您可以看到这两个查询的数据。
|
|
在本教程中,您学习了如何:
| 创建表格并查看数据 | ||
| 自动生成代码 | ||
| 创建和运行存储过程 | ||