JAVA链接SQL server数据库
我的jdk是1.8的版本,SQL server用的是2014的版本,JDBC访问数据库有2个关键步骤步骤。
1、导入驱动,加载具体的驱动类
2、与数据库建立连接
private static final String URL="jdbc:microsoft:sqlserver:localhost:1433;databasename=javasql";
private static final String USERNAME="java2";
private static final String PWD="11111122";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//加载具体的驱动类
connection=DriverManager.getConnection(URL,USERNAME,PWD);//与数据库建立连接
然后程序报错:
下面是我踩过的坑。
先是在网上查找了一番,发现很多说法是把URl里面的microsoft去掉,去掉之后还是报错。
然后看到了一个帖子,说是在SQL Server配置管理器中打开IP地址
“将IP1和IP10的【IP地址】设为127.0.0.1,并将所有【IP+数字】的【已启用】设为是。接着,拖动下拉条到最下方,将IP1、IP10、 IPAll 中的【TCP端口】设成 1433”
“依次点击“开始”→“控制面板”→“程序”(W10下直接在文件资源管理器上的搜索框输入 控制面板 进入),“在程序和功能”找到并点击“打开或关闭Windows 功能”进入Windows 功能设置对话框。找到并勾选“Telnet客户端,最后“确定”稍等片刻即可完成安装。”
“完成上一步后。开始菜单 → 运行cmd → 输入:telnet 127.0.0.1 1433”
结果还是没有解决我的问题
最后在一个问答上面看到 “连接字符串”的写法:
private static final String URL="jdbc:sqlserver://localhost:1433;databasename=javasql";
最后发现,好像是我URL连接字符串写错的原因,那个microsoft的确不能有,加上去的确报错,至于那个配置的,可能真的有用,下次要是发生URL没写错但是连接不上的就可以试试看了!
补充一下上面IP地址改变的含义,在和老师沟通之后,知道了一个小知识。就是SQL server的IP地址的值是电脑的端口,就是说,如果你想要链接B电脑的数据库,就得填电脑B的端口值。