分享好友 数据库首页 频道列表

java 连接sql server2008数据库配置

SQL Server  2015-10-10 15:220

1.首先要去Microsoft官网下载sqljdbc2.0驱动——Microsoft SQL Server JDBC Driver 2.0.exe,很小大概就4M,解压后里面有2个Jar包,sqljdbc4.jar和sqljdbc.jar,这两个都一样,只是针对你的JDK的版本的不同,如果你是JDK6.0直接导入sqljdbc4.jar,以下版本的导入sqljdbc.jar,如果怕麻烦的,两个都导进去也行。

2.包导完了,现在启动SQL配置器,SQL2000的默认端口是1433,所以只要开启端口就能连得上,但08的端口据说是动态的,具体的本人也不清楚,就是因为这个端口我也被整了2天,最后终于连上了。
打开配置器:

java 连接sql server2008数据库配置

将IP ALL的TCP动态端口(默认1163)改为1433,不改也行,因为大部分人的习惯是用默认的1433,在IP2已启用选择——是,确定。

同样的方法,开启客户端的TCP/IP,端口也为1443,如图:

java 连接sql server2008数据库配置

然后在DOS命令中输入测试 telnet 127.0.0.1 1433,
如果结果只有一个光标在闪动,那么就说明127.0.0.1 1433端口已经打开。
如果出现连接主机端口1433没打开,久要换端口。

一ODBC建立数据源

1 利用Java应用程序访问SQL Server2000数据库

  (1)建立数据库

  启动“Microsoft SQL Server2000”,打开“企业管理器”在“数据库”中建立名为“学生管理系统”的数据库,并在其下制作名为“学生信息”的数据表,如图1示。

 java 连接sql server2008数据库配置

(2)建立(ODBC)数据源和驱动程序

  在控制面板上通过“管理工具”的“数据源(ODBC)”打开“ODBC数据源管理器”对话框,单击“系统DSN”选项卡,然后单击“添加”按钮,得到“创建数据源”对话框,选择“SQL Server”并单击“完成”按钮,在出现的“建立新的数据源到SQL Server”对话框中的“数据源名称”项填写“madata”并选取“服务器名”,然后单击“下一步”按钮,选择“使用网络登录ID的Windows NT验证”项目,单击“下一步”按钮,把默认的数据库改为“mydata”,再单击“下一步”,单击“完成”按钮,然后可以单击“测试数据源”,成功后,单击“确定”按钮,完成了(ODBC)数据源和驱动程序的建立。

(3)编写Java程序

package com.test1;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
public class Test extends JFrame{
JPanel jp1,jp2;
JLabel jl1;
JButton jb1,jb2,jb3,jb4;
JTable jt=null;
JScrollPane jsp=null;
JTextField jtf;
PreparedStatement ps=null;
Connection ct=null;
ResultSet rs=null;
Vector rowData,columName; 
public static void main(String args[])
{
Test test=new Test();
}
public Test()
{
jp1=new JPanel();
jl1=new JLabel("请输入名字:");
jtf=new JTextField(10);
jb1=new JButton("查询:"); 
jp1.add(jl1);
jp1.add(jtf);
jp1.add(jb1);
jp2=new JPanel();
jb2=new JButton("添加:");
jb3=new JButton("修改:");
jb4=new JButton("删除:");
jp2.add(jb2);
jp2.add(jb3);
jp2.add(jb4);
columName = new Vector();
columName.add("学号");
columName.add("姓名");
columName.add("班级");
columName.add("系别");
columName.add("年龄");
columName.add("性别");
columName.add("籍贯");
rowData =new Vector();
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
ct=DriverManager.getConnection("jdbc:odbc:mydata");
ps=ct.prepareStatement("select *from 学生信息");
rs=ps.executeQuery();
while(rs.next())
{
Vector hang=new Vector();
hang.add(rs.getString(1));
hang.add(rs.getString(2));
hang.add(rs.getString(3));
hang.add(rs.getString(4));
hang.add(rs.getInt(5));
hang.add(rs.getString(6));
hang.add(rs.getString(7)); 
rowData.add(hang);
}
}
catch(Exception e)
{
System.out.println("数据库加载失败!");
}
finally
{
}
System.out.println("数据库加载成功!");
jt=new JTable(rowData,columName);
jsp=new JScrollPane(jt);
this.add(jp1,"North");
this.add(jsp);
this.add(jp2,"South");
this.setSize(400,300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
}

注意其中要引入jar包sqljdbc 2.0

JAVA连接SQL2008 - 似水流年 - 梦里花落知多少

现在进入正题

java 连接sql server2008数据库配置

启动MyEclipse 8.5——创建JAVA项目——记住导入sqljdbc4.jar

代码如下

我们用SQL验证的sa登录(前提要打开混合模式登录这里不在赘述)

import java.sql.*;
public class javaConSQL
{
public static void main(String[] args) 
{
String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL数据库引擎
String connectDB="jdbc:sqlserver://...:;DatabaseName=Mydb";//数据源
try
{
Class.forName(JDriver);//加载数据库引擎,返回给定字符串名的类
}catch(ClassNotFoundException e)
{
//e.printStackTrace();
System.out.println("加载数据库引擎失败");
System.exit();
} 
System.out.println("数据库驱动成功");
try
{
String user="sa";
String password="sql";
Connection con=DriverManager.getConnection(connectDB,user,password);//连接数据库对象
System.out.println("连接数据库成功");
Statement stmt=con.createStatement();//创建SQL命令对象
//创建表
System.out.println("开始创建表");
String query="create table TABLE(ID NCHAR(),NAME NCHAR())";//创建表SQL语句
stmt.executeUpdate(query);//执行SQL命令对象
System.out.println("表创建成功");
//输入数据
System.out.println("开始插入数据");
String a="INSERT INTO TABLE VALUES('','旭哥')";//插入数据SQL语句
String a="INSERT INTO TABLE VALUES('','伟哥')";
String a="INSERT INTO TABLE VALUES('','张哥')";
stmt.executeUpdate(a);//执行SQL命令对象
stmt.executeUpdate(a); 
stmt.executeUpdate(a);
System.out.println("插入数据成功");
//读取数据
System.out.println("开始读取数据");
ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE");//返回SQL语句查询结果集(集合)
//循环输出每一条记录
while(rs.next())
{
//输出每个字段
System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME"));
}
System.out.println("读取完毕");
//关闭连接
stmt.close();//关闭命令对象连接
con.close();//关闭数据库连接
}
catch(SQLException e)
{
e.printStackTrace();
//System.out.println("数据库连接错误");
System.exit();
}
}
}

MyEclipse8.5 运行结果:

java 连接sql server2008数据库配置

打开SQL2008企业管理器

执行SQL语句

USE Mydb
GO
SELECT * FROM TABLE1

结果为:

java 连接sql server2008数据库配置

说明已经成功连接SQL,并在数据库Mydb创建表TABLE1

谢谢!有哪里不正确的地方,去哪个读者指出,互相学习

查看更多关于【SQL Server】的文章

展开全文
相关推荐
反对 0
举报 0
评论 0
图文资讯
热门推荐
优选好物
更多热点专题
更多推荐文章
解决JDBC连接MySQL 8时得异常:java.sql.SQLException: The server time zone value '�й���׼ʱ��' is unrec
使用原来基于MySQL 5.1的JDBC代码运行时,报错:java.sql.SQLException: The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTi

0评论2023-02-10551

oracle调用java方法的例子(下面所有代码都是在sql/plus中写)
在Oracle中调用Java程序,注意:java方法必须是static类型的,如果想在JAVA中使用system.out/err输出log.需要在oracle 中执行"call dbms_java.set_output(5000);".一、helloWord1 编写JAVA程序,也是在SQL/PLUS中写,并执行.create or replace and compile Java 

0评论2023-02-10735

Oracle java.sql.SQLException: The Network Adapter could not establish the connectio
网络适配器无法建立连接出现这个问题可能是oracl服务没有打开或者是配置的数据库连接的信息:驱动类、连接地址、用户名、密码不对win+r  输入Regedit    查找到Oracle服务

0评论2023-02-10471

sql查询报java.sql.SQLException: Column 'LC_ID' not found 的错误实际上是mysql在hibernate别名的问题
报java.sql.SQLException: Column 'LC_ID' not found 的错误实际上是mysql在hibernate别名的问题我的查询sql是 String sql2 ="select lc.lc_id  lcId from Uum_Logincheck lc ";信息: Server startupin 13441 msselect lc.LC_ID lcId fromUum_Logincheck lc

0评论2023-02-10914

【Oracle】ORACLE SQL Developer不支持JAVA版本
    今天我打开 ORACLE SQL Developer准备开始练手。没有想到却给出了错误提示。 我 是安装了java JDK的而且是1.6版本的。我可能选择了bin目录下面的java.exe文件,原本觉得这样的操作应该是没有问题的结果还是出现了错误。具体错误信息如 下:不支持的ja

0评论2023-02-10599

java.sql.SQLException: No value specified for parameter 2 at com.mysql.jdbc.SQLError.create 小Bug异常
public boolean updateMemberslnfo(MembersInfo membersInfo) throws SQLException{StringBuffer sqlBuffer = new StringBuffer("UPDATE membersinfo SET ");boolean check = true;ListObject params = new ArrayListObject();if(membersInfo.getMname()!=nul

0评论2023-02-10619

java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:解决办法
激动的心,颤抖的手。本来web项目数据库连接的好好地,突然就连不上了,一直报java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:错误(未找到数据库驱动),今天终于解决了,记录一下,免得忘了下次再出错又浪费超长时间。1、检

0评论2023-02-10362

java.lang.ClassCastException: oracle.sql.TIMESTAMP cannot be cast to java.sql.Timestamp
http://***.com/questions/13269564/java-lang-classcastexception-oracle-sql-timestamp-cannot-be-cast-to-java-sql-ti

0评论2023-02-10914

JAVA-MySQL与Oracle或者(Oracle与MySQL)之间相互拷贝数据
1、数据库信息MySQL :5.6.38  Oracle:11.2.0.1.02、建表信息MySQL:CREATE TABLE cs (id INT ,cname VARCHAR (20),phoneVARCHAR (11)) DEFAULT CHARSET = utf8 ;Oracle:create table cs(idnumber(10) ,cname varchar2(50) not null,phone varchar2(11)

0评论2023-02-10578

mysql在spring+mybatis中出现value '0000-00-00 00:00:00' can not be represented as java.sql.Time
java.sql.SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp当日期字段在数据库中可为空,并且其默认值为“0000-00-0000:00:00”,在mysql中作为一个特殊值存在。但是java日期类型不认可转换抛出以上异常。解决方法:

0评论2023-02-10816

MySQL与Oracle之间互相拷贝数据的Java程序
因为工作需要,先是需要将一个小型的MySQL数据库中的数据拷贝到Oracle中;近期又有需要将一个中型的Oracle数据库拷贝到MySQL中。曾经找过网上各种转换工具,大多收费的,自己写个吧,还一切可控。转换的前提是两种数据库中已经存在相同的数据结构,可以自己利

0评论2023-02-09590

mysql/sql server和java之间的数据类型对应关系
Mysql************************************当前列  ClassName     ColumnType  DisplaySize  TypeName0:   java.lang.Integer  ColumnType:4  11  INTEGER1:   java.lang.Integer  ColumnType:-6  4  TINYINT2:   java.lang.Str

0评论2023-02-09613

MySQL案例04:Cause: java.sql.SQLException: Could not retrieve transaction read-only status from server
今天同事发现程序日志有异常抛出,询问原因,进过排查发现与java的连接参数有关系,具体处理过程如下:一、错误信息"message": "\n### Error updating database. Cause: java.sql.SQLException: Could not retrieve transaction read-only status from server

0评论2023-02-09566

【转】MySQL錯誤:Value '0000-00-00' can not be represented as java.sql.Date解決方法
原文地址:MySQL錯誤:Value '0000-00-00' can not be represented as java.sql.Date解決方法 jsp+Tomcat+Mysql開發中采用ResultSet取值時,不管是採用getString()還是採用getDate()時,均會拋出如題所述錯誤.查閱Mysql官方Bug資訊:http://dev.mysql.com/doc/re

0评论2023-02-09610

更多推荐