一 SQl Sever服务器配置

1我之前已经安装好SQL Sever 2008R2.(注意:安装一遍未成功时,一定要卸载干净,否则装不全,折腾好久)

2.连接服务器时一般都多个选择:(这个服务器名称,就是安装时设置的数据库实例,默认的实例有用户名MIT-PC和MTI-PC\SqLEXPRESS,有的安装好后只有用户名这个实例,不影响选择用户名实例就可以了。)

3。 一般JSP操作时多选择SQLexpress服务器,但是它默认是禁用的并且端口号没有配置,所以JDBC连接SQL Server时要进行重新设置,配置如下:

打开SQl Sever 配置管理器,SQLEXPRESS的协议中开启TCP/IP设置IPAll的TCP动态端口为1433.(有的是下面的TCP端口默认是1433,注意系统不能有端口冲突,没试过不知道设为其他行不,我一次就成功了)重启生效。还要注意:右边列的前三个协议都是开启的,VIA是禁用的。

4.用windows身份验证先进入。(这个是无论如何默认都能进去的,如果进不去就是没安装好。重装。进去后设置添加用户,设置用户权限,设置好才能按下面的SQL Sever身份验证登录,也就是说为任何数据库添加的用户设置权限时都是在windows身份验证进入下进行的,如果是SQL Sever身份验证登录设置修改权限时一般会报下图的错。

继续正文:

进入后,新建数据库sample,添加用户test,设置

设置好后,重启用SQL Sever身份验证,试试上面设置的用户,登陆成功。至此SQLexpress服务器配置完毕。

5.另一种我自己安装时新建的数据库实例SQLLEI也可以使用,基本设置同上面。此处端口是默认的50573

 用我设置的用户jsptest登录成功

新建了数据库和表,方便下面在JAVA中测试。

如图新建了数据库JspDB,新建了表aaaa,添加的用户jsptest

几点注意:1.用户和数据库要映射起来,表示此用户可以访问操作该数据库。

2.数据库名,表名不能使用保留的名字,如之前我表名取为User,结果一直报错。

二 JDBC连接SQL Server的驱动安装

1.下载:http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774

  下载“sqljdbc_4.0.2206.100_enu.exe得到sqljdbc_4.0.2206.100_enu.exe,解压到任意目录下。并在目录里找到sqljdbc4.jar文件,得到其路径开始配置环境变量

在环境变量classpath 后面追加C:\lei\Android\sqljdbc_4.0\enu\sqljdbc4.jar(注意目录里有两个jar包,一般Sql Sever 2000后都是用sqljdbc4.jar。

三 在JAVA中导入包,测试。

1 window->Preference-->Java->installed JRE-->Edit-->Add  External  Jars,查找目录添加sqljdbc4.jar

2 新建JAVA Project,

package lei.com.cn;

import java.sql.*;//在使用JDBC之前,要在文件前导入有关SQL的类。

public class test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //取得数据库的连接
        String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";//加载JDBC驱动" 
        String dbURL="jdbc:sqlserver://localhost:50573; DatabaseName=JspDB"; //JDBC协议 
        String userName = "jsptest";   //用户名 (确保该用户和数据库有映射关系,即有权限访问)    
        String userPwd = "*********";   //密码     
        Connection dbConn=null;      
        try {      
            Class.forName(driverName);      
            dbConn = DriverManager.getConnection(dbURL, userName, userPwd); //连接服务器和数据库JspDB     
            System.out.println("Connection Successful!");   //如果连接成功 控制台输出Connection Successful!      
            }
        catch (Exception e) {      
                e.printStackTrace();     
                }  
        //建立Statement对象
        Statement st=null;//Statement 提供执行基本SQL语句操作的功能
        try {
            st = dbConn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        //执行SQL语句
        String sql="select * from aaaa";
        ResultSet rs=null;//保存返回的结果集
        try {
            rs = st.executeQuery(sql);//用Statement实例的executeQuery()方法执行SQL语句
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        //获得查询结果
        try {
            while(rs.next()){
                System.out.println("第一个字段内容为:"+rs.getString(1));
                System.out.println("第二个字段内容为:"+rs.getString(2));
                System.out.println("第三个字段内容为:"+rs.getString(3));
                
            }
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        System.out.println("操作成功!");
        //关闭创建的对象(后打开先关闭)
        try {
            rs.close();
            st.close();
            dbConn.close();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        
        }
    }
    }

 

测试结果:

Connection Successful!
第一个字段内容为:1
第二个字段内容为:Admin
第三个字段内容为:Admin
第一个字段内容为:2
第二个字段内容为:lei
第三个字段内容为:123
第一个字段内容为:3
第二个字段内容为:hehe
第三个字段内容为:456
操作成功!

 

PS:如果你以前用JDBC连接SQL Server 2000的话就要注意了:

在SQL Server 2000 中加载驱动和URL路径的语句是

String driverName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";

String dbURL = "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=sample";

而sql server 2005 中加载驱动和url的语句则为

String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";

String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=sample";

 

 

posted on 2013-03-28 14:03  Yogurshine  阅读(5818)  评论(0编辑  收藏  举报