当前位置:首页 > 问答 > 正文

Eclipse怎么连SQL Server,步骤说说还有那些坑容易踩

行,直接上干货,说下怎么用 Eclipse 连 SQL Server,还有那些让人头疼的坑,咱一步步来,别急。

第一步:准备工作,先把“家伙事儿”备齐

你电脑上得有个 Eclipse,这个就不说了,假设你已经装好了,关键是另外两样东西:

  1. SQL Server 得启动着:你得确保你的 SQL Server 实例是正在运行的,不管是本地装的,还是连公司的远程服务器,它得在线,你得知道四个关键信息:

    • 服务器地址:本机一般是 localhost0.0.1 或者一个点,远程的就是那个 IP 地址或者主机名。
    • 端口号:默认是 1433,如果管理员改过,你得问清楚。
    • 数据库名:你要连的具体是哪个数据库。
    • 用户名和密码:能用这个用户名密码登录 SQL Server,建议先用 SQL Server Management Studio (SSMS) 试试能不能连上,能用 SSMS 连上,Eclipse 就成功了一半。
  2. 下载 JDBC 驱动 jar 包:这是重中之重!Eclipse(其实是你的 Java 程序)是通过一个叫 JDBC 的驱动来和 SQL Server 对话的,你得去微软官网下载这个 jar 包,搜索 “Microsoft JDBC Driver for SQL Server”,进去后选择适合你 SQL Server 版本的驱动下载(一般选最新的兼容版本问题不大),下载完是个压缩包,解压后,找到那个 .jar 文件(mssql-jdbc-12.2.0.jre11.jar),把它放在一个你记得住的文件夹里,D:\drivers\(来源:微软官方文档)

第二步:在 Eclipse 里创建连接

  1. 打开数据库视图:打开 Eclipse,在上方菜单栏找 Window -> Show View -> Other...,在弹出的窗口里,展开 Data Management,找到 Data Source Explorer,点开它,这样 Eclipse 界面里就会多出一个叫 “Data Source Explorer” 的视图。

  2. 新建连接:在 “Data Source Explorer” 视图里,右键点击 Database Connections,选择 New...,这时会弹出一个对话框让你选数据库类型,在这里面找到 Microsoft SQL Server(可能有好几个版本,选一个看起来最新的,Microsoft SQL Server 20xx),给它起个名字,MySQLServer,然后点 Next

  3. 配置连接属性(坑开始出现了)

    • Driver:这里默认可能没有合适的驱动,点击下拉框,选择 New Driver Definition(新建驱动定义),这是关键一步。
    • 定义驱动:在新窗口里,先点击 JAR List 标签页,把里面已有的没用的 jar 包都 Remove 掉,然后点击 Add JAR...,找到你第一步下载并保存的那个 mssql-jdbc-xxx.jar 文件,选中它,添加进来。
    • 设置属性:然后点击 Properties 标签页,这里要填东西:
      • URL:这是个大坑!格式一般是 jdbc:sqlserver://[serverName[\instanceName][:portNumber]];databaseName=[databaseName];,举个例子,连本地默认实例的 TestDB 数据库:jdbc:sqlserver://localhost:1433;databaseName=TestDB注意:URL 里不要有空格,分号是英文分号。
      • Database:填你的数据库名,TestDB
      • Host:填服务器地址,localhost
      • Port:填端口号,1433
      • User name:填你的用户名,sa
      • Password:填密码。
    • 填好后,可以点击 Test Connection 测试一下,如果出现 Ping succeeded!,恭喜你,成功了!如果失败,就看下面的“坑”部分。

第三步:连接成功后的操作

测试成功后,一路 OKFinish,然后在 “Data Source Explorer” 里你就能看到这个连接了,点开它,能看到数据库里的表、视图等,右键点击连接,可以选择连接(Connect)或断开(Disconnect),你还可以写 SQL 语句来查询数据。


好了,现在重点说说那些容易踩的坑:

  1. 最大的坑:驱动不对或没加载,这是最常见的问题,症状是测试连接时报一堆 ClassNotFound 或者 “No suitable driver found” 的错误。

    • 原因:你没按第二步里那样去“新建驱动定义”并手动添加 jar 包,Eclipse 找不到正确的驱动类。
    • 解决:严格按第二步的“定义驱动”步骤来,确保 JAR List 里只有你添加的那个正确的 jar 包。
  2. 第二个坑:SQL Server 配置管理器没设置好,症状是连接超时(Connection timed out)或者根本找不到服务器。

    • 原因:SQL Server 默认可能只允许本地共享内存连接,或者 TCP/IP 协议没开启。
    • 解决:(来源:SQL Server 常见配置问题)打开电脑上的 “SQL Server 配置管理器”(不是在 SSMS 里)。
      • 展开 SQL Server 网络配置,找到你的实例(SQLEXPRESS 的协议)。
      • 在右边确保 TCP/IP已启用 状态,如果不是,右键启用它,然后重启 SQL Server 服务
      • 双击 TCP/IP,在 IP 地址 标签页里,拉到最下面,看 IPAll 部分,TCP 端口 是否设置为了 1433(或者你想要的端口)。
  3. 第三个坑:身份验证模式问题,症状是登录失败。

    • 原因:你安装 SQL Server 时可能选择了“Windows 身份验证模式”,但你在 Eclipse 里用了用户名密码(SQL Server 身份验证)。
    • 解决:有两种方法:
      • 方法一(推荐):在 Eclipse 的连接属性里,User namePassword 留空,并勾选 “Use Windows OS authentication”,但这需要配置比较复杂的 JDBC 驱动属性(integratedSecurity=true 和设置 authScheme 等),对新手不友好。(来源:JDBC 驱动高级配置文档)
      • 方法二(简单):直接用 SSMS 以 Windows 身份验证登录服务器,在“安全性”->“登录名”里,启用 sa 账户并设置一个密码,然后确保服务器属性里的“安全性”页面,选择了“SQL Server 和 Windows 身份验证模式”,重启 SQL Server 服务,之后在 Eclipse 里就可以用 sa 和密码登录了。
  4. 第四个坑:防火墙拦住了,症状也是连接超时。

    • 原因:Windows 防火墙或者其他安全软件阻止了对 1433 端口的访问。
    • 解决:在防火墙设置里,添加入站规则,允许 端口 1433 的 TCP 连接。
  5. 第五个坑:URL 格式写错,症状是各种奇怪的错误。

    • 原因:URL 格式非常严格,多一个空格、少一个分号、用了中文标点都会导致失败。
    • 解决:严格按照 jdbc:sqlserver://主机:端口;databaseName=库名; 的格式写,所有符号都是英文半角,如果实例名不是默认的(比如叫 SQLEXPRESS),URL 要写成 jdbc:sqlserver://主机\实例名:端口;...,注意这里是反斜杠 \

基本上,按步骤来,然后遇到问题优先排查上面这几个坑,90% 的问题都能解决,连接测试通的那一刻,你会觉得世界都美好了。

Eclipse怎么连SQL Server,步骤说说还有那些坑容易踩