java怎样连接到SQL server 2008

Python021

java怎样连接到SQL server 2008,第1张

首先下载对应的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