连接数据库

在项目中创建文件夹lib
将jar包复制到该目录
在项目右键选择“build path”构建路径
在librares中点“add jar”
 
前提条件:
1.sql身份必须能登录
2.启用"tcp/Ip"
    进入"SQL Server配制管理器"->左边"Sql Server网络配制"->"MSSQLSERVER协议"
    右边右键启用:"TCP/IP"
    重启sqlserver服务生效
 

如何连接数据库
JDBC : java Database Connection
步骤:
1.加载驱动
    Class.forName(String 数据连接的驱动类);
    数据连接的驱动类由数据库生产产商提供
        示例:sqlServer由Microsoft提供    (以jar包形式提供)
          SQL server:com.microsoft.sqlserver.jdbc.SQLServerDriver
2.获取连接对象
    Connection conn =  DriverManager.getConnection(jdbc:sqlserver://localhost:1433;DatabaseName=数据库名,sql登录账号,密码);
    DriverManager是驱动管理类
3.创建语句对象
    Statement stmt = conn.createStatment();
    语句对象是向数据库中发送sql命令
4.执行sql语句并处理
    a.查找语句(select...)
        ResultSet rs = stmt.executeQuery(String select语句);
        循环遍历rs,获取数据
    b.增,册,改语句(insert..., delete..., update...)
        int num = stmt.executeUpdate(String 非查询语句)
        返回一个整数,表示受影响的行数
5.关闭数据库相关对象
    rs.close();
    stmt.close();
    conn.close();
 

五个步骤:
1.加载驱动
2.获取连接对象
3.创建语句
4.执行sql命令并处理
5.关闭相关对象
相关类:
    Class类中静态方法forName(String 驱动类)
    DriverManage:驱动管理器类,调用静态方法 getConnection (String url, String sqlID, String sqlPwd)返回Connection对象
    Connection:是一个接口,表示数据库连接对象.调用createStatement()返回一个语句对象       
    Statement表示执行sql语句的类
    常用方法:
        int executeUpdate(String 非查询语句)
        ResultSet executeQury(String 查询语句)
    ResultSet表法返回到java结果集对象
        常用方法:
        boolean next() 
        用于将指针指向下一行记录,返回值为true表示有数据行,否则表示已经到达结果集的末尾。
 
        Xxxx  getXxxx(int index)
        Xxxx  getXxxx(String 列名)
        此方法用于获取数据.
        Xxxx表示不同的数据类型
        String getString()
        int    getInt()
        ......
        参数:
            int index 表示是数据表中列的编号(从1开始)
 
            String 列名:除了指定编号也可以使用列名获取数据
 
 

 
package com.test.myjdbc;
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
public class DBConnection {
    private static String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    private static String url = "jdbc:sqlserver://localhost:1433;DatabaseName=testdb";
    private static String uName = "sa";
    private static String passwd = "wangl";
 
    public static Connection getConnection() {
        try {
            //Class.forName(driver);
            return DriverManager.getConnection(url, uName, passwd);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
 
    public static void closeConn(Connection conn,Statement st,ResultSet rs) {
        if(rs!=null){
            try {
                rs.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if(st!=null){
            try {
                st.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
 
    public static void main(String[] args) {
        System.out.println(DBConnection.getConnection());
    }
}
原文地址:https://www.cnblogs.com/zachary7/p/8191591.html