【问题标题】:Create connection to SQL server DB from Oracle data modeler从 Oracle 数据建模器创建到 SQL Server 数据库的连接
【发布时间】:2013-03-07 09:33:06
【问题描述】:

我正在尝试从 Oracle SQL Developer Data Modeler 3.1.4.710 连接到 MS SQL Server 2005。我转到文件 -> 导入 -> 数据字典,然后尝试创建到 SQL Server 的连接。

我不断收到"Status : Failure -Test failed: Driver class not found. Verify the Driver location" error.

我正在使用 JDBC URL:jdbc:sqlserver://testServer/sqlexpress;databaseName=testDB;integratedSecurity=true;

Driver Class: CLASSPATH =.;C:\Program Files\Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_4.0\enu\sqljdbc.jar

我试过sqljdbc4.jar 无济于事。

我也尝试了“com.microsoft.sqlserver.jdbc.SQLServerDriver”,但还是没有成功。你能帮忙吗?

这是截图..

【问题讨论】:

  • 使用相关代码提供完整的堆栈跟踪
  • 我不确定在使用向导时如何获取堆栈跟踪。你能告诉我如何获得它吗?
  • 我以为您正在尝试通过代码。看到这可能会有所帮助。 forums.oracle.com/forums/…

标签: oracle sql-server-2005 jdbc


【解决方案1】:

我能弄明白。

这就是我所做的:

JDBC URL:jdbc:sqlserver://testServer\SQLEXPRESS/Databases/testDB:1433;user=sa;password=pass; 驱动类:com.microsoft.sqlserver.jdbc.SQLServerDriver

我还在 Prefrences 中添加了 sqljdbc4.jar。 (在工具选项下)。

确保在 SQL Server 中设置了 1433 端口。为此,请执行以下步骤:

  1. 打开 SQL Server 配置管理器,然后展开 SQL Server 2005 网络配置。
  2. 单击 InstanceName 的协议,然后确保在右侧面板中启用 TCP/IP,然后双击 TCP/IP。
  3. 在 Protocol 选项卡上,注意 Listen All 项的值。
  4. 单击 IP 地址选项卡: 如果 Listen All 的值为 yes,则此 SQL Server 2005 实例的 TCP/IP 端口号是 IPAll 下 TCP Dynamic Ports 项的值。 如果 Listen All 的值为 no,则此 SQL Server 2005 实例的 TCP/IP 端口号是特定 IP 地址的 TCP Dynamic Ports 项的值。
  5. 确保 TCP 端口为 1433。
  6. 点击确定。

【讨论】:

  • 只是想补充一点,在经历了一个小时的挫折之后,这对我有所帮助,除了对我的 JDBC URL 进行了少量编辑(服务器名称后的双反斜杠)。我正在连接到 SQL 的 Azure 实例。 JDBC URL:jdbc:sqlserver://xxxxxxx.database.windows.net\\DB_Name:1433;user={username};password={your_password};
  • 更多信息重要:在此处下载 SQL Server JDBC 驱动程序:docs.microsoft.com/en-us/sql/connect/jdbc/…
  • 如果您的 SQL 实例是默认实例,您必须指定“\MSSQLSERVER”,不能省略。
【解决方案2】:

您也可以使用 ODBC 驱动程序。我不确定 ODBC 驱动程序是随 SQL Server 安装还是 Windows 原生安装,或者您必须单独安装。

如果使用 Windows XP:

--ODBC--

开始按钮 -> 设置 -> 控制面板 -> 管理工具 -> 数据源 (ODBC)

打开 ODBC 数据源管理器后,如果没有打开,则转到 -User DSN- 选项卡

点击添加 -> 选择 SQL Server Native Client 10.0 ->

名称:例如:AdventureWorks2008 服务器:下拉框中的“SQL Server 名称”示例:(本地)或安装期间最初指定的 SQL Server 名称->

下一步->

SQL Server 应该如何验证真实性? 选择您希望如何连接到 db Windows 集成或 SQL 服务器(如果 SQL Server 则添加用户参数,例如 user= sa pass='*')

下一步->

将默认数据库更改为 AdvetureWorks2008 -> Next '不要在此处触摸任何内容,除非...-> 并单击 Finish -> 单击 Test Data Source -> OK

--数据建模器--

现在转到 Oracle SQL 数据建模器(我的是 4.00 版)

首先,如果您的关系模型中已有某些内容,则在 Data Modeler 浏览器中创建一个新的关系模型 -> RightClick -> 新建关系模型 - 这将保存您从 SQL Server 导入的数据字典

文件 -> 导入 -> 数据字典(您现在正在使用数据字典导入向导)

单击添加-> 连接名称:例如:AdventureWorks2008 -'你可以给它任何名称,你将能够连接到 SQL Server 中的任何数据库'

单击 JDBC 选项卡并打开 JDBC-ODBC 桥(选项按钮 - 如果默认情况下未单击,请单击)-> ODBC 别名:AdventureWorks2008(与您在 ODBC 设置中指定的完全相同)

数据库类型:SQL Server

点击-Test-确保连接成功。

点击保存

点击连接

您仍在使用数据字典连接向导

突出显示连接名称“AdventureWorks2008”

点击下一步 -> 选择你想要的数据库例如:AdventureWorks2008 -> 下一步 -> 选择你想要的表 -> 下一步 -> 完成

【讨论】:

    【解决方案3】:

    这很疯狂,但我发现当我将 SYBASE JDBC 驱动程序添加到 Tools| 时偏好 |数据库 |第三方 JDBC 驱动程序然后我的 SQL Server 连接开始工作。我添加了 Microsoft JDBC 驱动程序,但在添加 Sybase JDBC 驱动程序之前,连接将失败,甚至无法到达 SQL Server 实例。这可能是因为 Sybase 和 MS SQL 都使用 TDS 数据流。我添加的 Sybase 文件是 jtds-1.3.1.jar。注意:我没有使用 JDBC 选项卡,我使用的是 Connections 中的 SQL Server 选项卡。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-20
      • 2016-11-03
      • 2020-09-25
      • 2017-03-18
      • 2020-03-05
      • 1970-01-01
      • 2016-08-12
      • 1970-01-01
      相关资源
      最近更新 更多