使用JDBC访问SQL Server数据库

本文提供了一个使用JDBC访问SQL Server数据库的示例,适合初学者参考,通过修改即可满足不同需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        关于环境的配置可以看之前的文章,这是一个访问数据库的Demo,可以根据自己的要求做简单的修改

 

import java.sql.*;

public class SQLDemo {
	private static final String JDBC_DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";//设置SQL Server数据库引擎
	private static final String DATABASE = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=MyDatabase";//指定数据库
	private static final String DB_USER = "sa";//数据库登录名
	private static final String DB_PASSWORD = "";//数据库登陆密码
	
	public static void main(String[] args) {
		Connection connection = null;
		
		try {
			Class.forName(JDBC_DRIVER);
			connection = DriverManager.getConnection(DATABASE, DB_USER, DB_PASSWORD);//登录数据库
			
			//create(connection);
			//insert(connection);
			//query(connection);
			//updateInfo(connection);
			//updatePassword(connection);
			
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			System.out.println("数据库加载失败");
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			System.out.println("数据库访问失败");
			e.printStackTrace();
		} finally {
			if(connection != null){
				try {
					connection.close();
				} catch (SQLException e) {
					//ignore
				}
			}
		}
	}
	
	public static void create(Connection connection) throws SQLException{
		String cmd = "create table DRIVER( "
				+ "PHONE varchar(11) primary key, "
				+ "PASSWORD varchar(16) not null, "
				+ "ID_NUMBER varchar(19), "
				+ "USER_NAME nvarchar(10), "
				+ "DRIVING_LICENCE varchar(19), "
				+ "NICK_NAME nvarchar(10) "
				+ ")";
		
		connection.createStatement().execute(cmd);
	}
	
	public static void insert(Connection connection) throws SQLException{
		String cmd = "insert into DRIVER(PHONE, PASSWORD, ID_NUMBER, USER_NAME, DRIVING_LICENCE, NICK_NAME) "
				+ "values( ?, ?, ?, ?, ?, ?)";
		
		PreparedStatement statement = connection.prepareStatement(cmd);
		statement.setString(1, "12345678910");
		statement.setString(2, "123456");
		statement.setString(3, "123456");
		statement.setString(4, "babao");
		statement.setString(5, "123456");
		statement.setString(6, "imbabao");
		statement.executeUpdate();
	}
	
	public static void query(Connection connection) throws SQLException{
		String cmd = "select * "
				+ "from DRIVER";
		
		PreparedStatement statement = connection.prepareStatement(cmd);
		ResultSet resultSet = statement.executeQuery();
		while(resultSet.next()){
			for(int i = 1; i <= 6; ++i){
				System.out.println(resultSet.getString(i) + "|");
			}
		}
	}
	
	public static void updateInfo(Connection connection) throws SQLException{
		String cmd = "update Driver set "
				+ "ID_NUMBER = ?, "
				+ "USER_NAME = ?, "
				+ "DRIVING_LICENCE = ?, "
				+ "NICK_NAME = ? "
				+ "where phone = ?";
		
		PreparedStatement statement = connection.prepareStatement(cmd);
		statement.setString(1, "330304");
		statement.setString(2, "babao");
		statement.setString(3, "330304");
		statement.setString(4, "imbabao");
		statement.executeUpdate();		
	}
	
	public static void updatePassword(Connection connection) throws SQLException{
		String cmd = "update Driver set PASSWORD = ? where phone = ?";
		
		PreparedStatement statement = connection.prepareStatement(cmd);
		statement.setString(1, "password");
		statement.setString(2, "12345678910");
		statement.executeUpdate();
	}
}

 

 

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值