首先下载对应的JDBC驱动包,sql2008的,然后引入到项目里
通过这段代码可以获取到链接
static final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver"static final String URL = "jdbc:sqlserver://localhost:1433integratedSecurity=truedatabaseName=数据库的名字"
static final String PWD = 密码
public static Connection getConnection() {
Connection con = null
try {
Class.forName(DRIVER)
con = DriverManager.getConnection(URL)
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace()
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace()
}
return con
}
1.准备驱动程序sqljdbc_1.2(如sqljdbc_1.2.2828.100_chs.exe)将下载解压得的sqljdbc.jar拷到C:\jdk1.6.0_10\jre\lib\ext
下(我把JDK安装到了C:\jdk1.6.0_10中,这里因人而异)
2.开启SQL的1433端口
利用SQL
配置管理器来配置,选择对应的数据库实例-->选择TCP/IP
(启用它,双击出现下面第二张图,写上1433端口),确定。
3.编写测试代码
package
etonch.com
import
java.sql.*
import
java.sql.Connection
import
java.sql.DriverManager
import
java.sql.SQLException
public
class
Connsql
{
/**
*
@param
args
*/
public
static
void
main(String[]
args)
{
//
TODO
Auto-generated
method
stub
try
{
String
conURL="jdbc:sqlserver://localhost:1433
DatabaseName=sqljava"
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
}
catch(java.lang.ClassNotFoundException
e)
{
System.out.println(e.getMessage())
}
Connection
con=DriverManager.getConnection(conURL,"用户名","密码")
Statement
s=con.createStatement()
String
query
=
"create
table
zg("
+
"eno
char(10),"
+
"ename
char(15),"
+
"esex
char(15),"
+
"gz
integer,"
+
"ezc
char(15)"
+
")"
s.executeUpdate(query)
String
r1="insert
into
zg
values("+"'1002','张小华','男',600,'助工')"
s.executeUpdate(r1)
s.close()
con.close()
}
catch(SQLException
e)
{
System.out.println("SQLException:"+e.getMessage())
}
}
}
4.运行测试
5.正常应该成功
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天,最后终于连上了
打开配置器:
将IP ALL的TCP动态端口(默认1163)改为1433,不改也行,因为大部分人的习惯是用默认的1433,在IP2已启用选择——是,确定。
同样的方法,开启客户端的TCP/IP,端口也为1443,如图:
然后在DOS命令中输入测试 telnet 127.0.0.1 1433,
如果结果只有一个光标在闪动,那么就说明127.0.0.1 1433端口已经打开。
如果出现连接主机端口1433没打开,久要换端口。
一ODBC建立数据源
1 利用Java应用程序访问SQL Server2000数据库
(1)建立数据库
启动“Microsoft SQL Server2000”,打开“企业管理器”在“数据库”中建立名为“学生管理系统”的数据库,并在其下制作名为“学生信息”的数据表,如图1示。
(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