您的位置:首页 > 数据库

利用jdbc连接sqlserver2008(打开用户,配置远程登录)

2011-09-18 15:13 363 查看
1. 安装sqlserver2008

2. 默认情况下是windows身份登录,sa用户被禁止。

3. 通过windows身份登录到数据库,在“安全性”下,右键点击“新建登录名”,选择以sql 身份登录。


4. 右键点击服务器,选择“属性”,选择“安全性”,然后选中sql server和windows身份验证模式。



5. 配置远程登录,2008采用的是动态端口分配,打开配置管理器,修改服务端和客户端的端口为1433





6. 下载jdbc驱动,到microsoft官网下载sqljdbc2.0驱动——Microsoft SQL Server JDBC Driver 2.0.exe,很小大概就4M,解压后里面有2个Jar包,sqljdbc4.jar和sqljdbc.jar,这两个都一样,只是针对你的JDK的版本的不同(我的jdk是1.6.21,导入sqljdbc4报了一个异常,然而换了一个以前的包就好了,当出现这个Disabling contextual LOB creation as createClob()
method threw error : java.lang.reflect.InvocationTargetException异常时,就是说包导错了,换包试试。)

7. 配置hibernate.properties文件(直接用jdbc也行)

## MS SQL Server

hibernate.dialect org.hibernate.dialect.SQLServerDialect
hibernate.connection.driver_class com.microsoft.sqlserver.jdbc.SQLServerDriver
hibernate.connection.url jdbc:sqlserver://172.7.22.24:1433;DatabaseName=webclient
hibernate.connection.username root
hibernate.connection.password centre

我采用的是c3p0数据源,测试获得sessionfactory正常。

8.直接通过jdbc访问的例子,网上找的,应该是对的。

import java.sql.*;

public class javaConSQL

{

public static void main(String[] args)

{

String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL数据库引擎

String connectDB=;//数据源

"jdbc:sqlserver://127.0.0.1:1433;DatabaseName=Mydb"

try

{

Class.forName(JDriver);//加载数据库引擎,返回给定字符串名的类

}catch(ClassNotFoundException e)

{

//e.printStackTrace();

System.out.println("加载数据库引擎失败");

System.exit(0);

}

System.out.println("数据库驱动成功");

try

{

String user="sa";

String password="sql2008";

Connection con=DriverManager.getConnection(connectDB,user,password);//连接数据库对象

System.out.println("连接数据库成功");

Statement stmt=con.createStatement();//创建SQL命令对象

//创建表

System.out.println("开始创建表");

String query="create table TABLE1(ID NCHAR(2),NAME NCHAR(10))";//创建表SQL语句

stmt.executeUpdate(query);//执行SQL命令对象

System.out.println("表创建成功");

//输入数据

System.out.println("开始插入数据");

String a1="INSERT INTO TABLE1 VALUES('1','旭哥')";//插入数据SQL语句

String a2="INSERT INTO TABLE1 VALUES('2','伟哥')";

String a3="INSERT INTO TABLE1 VALUES('3','张哥')";

stmt.executeUpdate(a1);//执行SQL命令对象

stmt.executeUpdate(a2);

stmt.executeUpdate(a3);

System.out.println("插入数据成功");

//读取数据

System.out.println("开始读取数据");

ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE1");//返回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(0);

}

}

}

9.请关闭防火墙。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐