65.9K
CodeProject 正在变化。 阅读更多。
Home

如何轻松测试你的 ADO.NET 连接

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.20/5 (2投票s)

2011年3月22日

CPOL

3分钟阅读

viewsIcon

41706

downloadIcon

1944

如果使用 ADO.NET 连接器的程序无法连接到数据库,这个程序可以帮助你一步一步地测试连接。

引言

如果使用 ADO.NET 连接器的程序(几乎所有的 C# 和 .NET 应用)无法连接到数据库,这个程序可以帮助你一步一步地测试连接。此代码没有许可证限制 - 你可以随意使用它。

注意:我们自己很少使用这个工具,因为我们有很多开发工具可以实现相同的功能。但当我们需要发送给那些非开发者且手头没有任何工具的客户时,这个工具就非常有价值了。

打开通信通道

第一步是找到有效的连接字符串。为此,connection strings 是你最好的朋友。获得连接字符串后,你就可以:

  1. 选择你要连接的供应商。如果你的系统上没有正确安装 DB2、MySQL 和/或 Oracle 的 ADO.NET 连接器,则不会列出它们。
  2. 输入连接字符串。
  3. 点击“连接”。
  4. 底部的状态栏会显示“连接成功!”或尝试连接时发生的错误。

如果连接失败,通常是由于以下三个问题之一:

  1. 你的系统上没有安装 ADO.NET 连接器。
    1. 对于 Oracle,也可能是 Oracle 客户端软件没有正确安装在你的计算机上。
  2. 你没有访问该数据库的权限。
  3. 数据库不接受连接。这可能是由于防火墙和数据库本身的原因。

检索元数据

这部分使用了 Kailua Project - ADO.NET API 中被遗忘的方法。这是开源的,并且 kailua.dll 包含在上面的下载中。

  1. 在“列出表格”下,选择模式(“用户拥有”仅对 Oracle 有意义)。
  2. 点击“执行”(是的,我在创建程序时受到了《星际迷航》的影响)。
  3. 右边的表格应列出所有表格、视图和存储过程。

如果你没有获得元数据,通常是因为:

  1. 你的登录名没有检索元数据的权限(此限制通常仅发生在 DB2 和 Oracle 上)。如果你认为这是问题所在,请转到下面的“检索数据”并尝试 Select。如果 Select 成功而元数据失败,则这是对你的凭据的限制。
  2. 你的登录名没有访问该数据库的权限。

检索数据

最后是提取数据库中的数据。要运行 Select:

  1. 点击“Select”选项卡。
  2. 在“输入 Select”下方输入你的 Select 语句。
  3. 点击“执行”。
  4. 你将在 Select 语句下方的表格中看到结果。

如果这不起作用,请阅读底部错误框中的消息。此处的问题分为两类:

  1. 你的 Select 语句无效。在这种情况下,请阅读供应商的 Select 语法文档。
  2. 不允许执行你的 Select 语句。这再次归结为你的凭据。

资源

未列出代码

我没有在本文中展示代码,因为我认为它没有意义。这是一个有用的工具(它帮助了我们很多),但价值在于使用该工具,而不是代码本身。

现在,Kailua 项目中的代码非常有趣(或者更确切地说,其中的 Select 语句)。我将来会写关于它的文章,并在发布时在此处发布链接。

© . All rights reserved.