zoukankan      html  css  js  c++  java
  • Java连接Sql Server 2008的简单数据库应用

    1.从微软官网下载JDBC驱动包

          sqljdbc_4.0.2206.100_chs.exe,双击解压文件到指定目录,我的指定目录是:

          C:Program FilesMicrosoft JDBC Driver 4.0 for SQL Serversqljdbc_4.0chs

          下面是解压后的文件,

          

          如果JDK版本低于6.0,则需使用sqljdbc.jar;

          6.0以上版本使用sqljdbc4.jar,使用sqljdbc4.jar版本好处可以省略

    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")这一段代码。

    2.将sqljdbc4.jar所在文件路径添加到系统环境变量CLASSPATH中;

          

    3.打开Sql Server 2008配置管理器(Sql Server Configuration Manager)

          

          启动TCP/IP端口,并右击选择属性,将TCP地址端口设为1433(端口值可以自己定义范围在0~65535);

    3.打开DOS命令行界面,输入netstat -a 命令查看开启了哪些端口:   

          netstat -a查看开启哪些端口 
          netstat -n查看端口的网络连接情况 
          netstat -v查看正在进行的工作 
          netstat -p tcp/ip查看某协议使用情况 
          netstat -s 查看正在使用的所有协议使用情况

    4.连接数据库:

          (1)用windows验证方式连接数据库:这种方式可能要求管理员权限,至少部分情况下会导致无法正常访问数据库。因此不建议采用!

          (2)用sql server身份验证方式连接数据库。

              如果安装sql server 2008 时是以windows身份验证安装的,没有为sql server 2008添加sql sever身份用户,需要首先添加用户:

    打开Microsoft SQL Server Management Studio并以windows验证方式登录,左侧的对象资源管理器->安全性->登录名,右击sa->属性,为sa用户添加密码,选择sql server身份验证,在“状态”项中授予连接到数据库和登录启用;

           

            

     

    右击对象资源管理器的根节点,选择属性->安全性->sql server和windows身份验证模式,然后就这样

    创建了以sql server身份验证的用户sa。

    我0创建的sa用户密码是"12345";

    5.将sqljdbc4.jar导入到eclipse的项目中:

            有两种方法导入jar包,第一种是先把jar包放在项目的目录下,通过添加jar包,是使用相对地址的,这样把项目复制到其它电脑也可以用

    第二种方法是导入外部的jar包,是绝对地址,如果项目要复制到其它电脑又要重新导入

    建议使用第一种方法!

            1.右击要导入jar包的项目工程,点击properties 
            2.左边选择java build path,右边选择libraries 
            3.选择add External jars 
            4.选择jar包的所在路径下的sqljdbc4.jar,点击打开
            

            

             

    6.连接Sql Server 2008数据库的Java代码:

            连接数据库代码:

            String url = "jdbc:sqlserver://localhost:1433;DatabaseName=test1;";

            conn = DriverManager.getConnection(url ,"sa","12345");

            完整代码:

            在用Java连接数据库之前,先创建一个数据库或者导入一个数据库,然后Java连接并访问该数据库!

    package JDBC_Test;
    
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    
    public class Test {
        public static void main(String[] args) {
            Connection conn;
            Statement stmt;
            ResultSet rs;
            String url = "jdbc:sqlserver://localhost:1433;DatabaseName=student_course;";
            String sql = "select * from student";
            try {
                // 连接数据库
                conn = DriverManager.getConnection(url, "sa", "12345");
                // 建立Statement对象
                stmt = conn.createStatement();
                /**
                 * Statement createStatement() 创建一个 Statement 对象来将 SQL 语句发送到数据库。
                 */
                // 执行数据库查询语句
                rs = stmt.executeQuery(sql);
                /**
                 * ResultSet executeQuery(String sql) throws SQLException 执行给定的 SQL
                 * 语句,该语句返回单个 ResultSet 对象
                 */
                while (rs.next()) {
                    int id = rs.getInt("Sno");
                    String name = rs.getString("Sname");
                    int age = rs.getInt("Sage");
                    System.out.println("Sno:" + id + "	Same:" + name + "	Sage:" + age);
                }
                if (rs != null) {
                    rs.close();
                    rs = null;
                }
                if (stmt != null) {
                    stmt.close();
                    stmt = null;
                }
                if (conn != null) {
                    conn.close();
                    conn = null;
                }
            } catch (SQLException e) {
                e.printStackTrace();
                System.out.println("数据库连接失败");
            }
        }
    }
  • 相关阅读:
    内核参数优化/etc/sysctl.conf
    python
    2014又一次认识我
    Android核心服务解析篇(三)——Android系统的启动
    Cocos2d-x 3.0 Android改动APK名、更改图标、改动屏幕方向、改动版本,一些须要注意的问题
    算术表达式
    数学之路-python计算实战(18)-机器视觉-滤波去噪(双边滤波与高斯滤波 )
    交叉排序
    iOS AES的加密解密
    codeforces 570 D Tree Requests
  • 原文地址:https://www.cnblogs.com/borter/p/9448296.html
Copyright © 2011-2022 走看看