原生jdbc连接MySQL数据库

个人理解:原生也就是最初的,基础写法。

接下来看代码块:

用的是Java.sql的包,不要用错包了

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class PreparedStatementDemo {
	public static void main(String[] args) {
		try {
			// 1、引用架包
			Class.forName("com.mysql.jdbc.Driver");
			// 2、创建数据库连接使用
			//双引号那个一般都是比较固定的,只是后面的localhost:3306/demo,分别是本地以及端口号/数据库名称
			String url = "jdbc:mysql://localhost:3306/demo";
			String user = "root";//登录的账号
			String password = "root";//登录的密码
			//上面三个String变量其实都是可以直接写到下面来的
			Connection stat = DriverManager.getConnection(url, user, password);
			//使用SQL语句操作数据库
			// 方法1
			/*
			 * String sql ="INSERT INTO  demo(id,NAME,PASSWORD) VALUE (?,'王五',1234)";
			 * PreparedStatement per = stat.prepareStatement(sql);
			 * per.execute(sql);
			 */
			// 方法二(占位符)
			String sql = "INSERT INTO  test(name,password) VALUE (?,?)";
			PreparedStatement per = stat.prepareStatement(sql);
			/*
			 * per.setString(1, "赵六");//参数索引是在1开始计算,而不是从0开始计算
			 * per.setInt(2,123);
			 */
			// 时间
			// per.setDate(3, new java.sql.date(System.currentTimeMillis()));
			// 注意传时间值
			
			// 直接可以使用Object代替掉任何类型的参数,但是中文还是要用引号引起来的
			//可以使用Object处理参数。
			per.setObject(1, "屋子");
			per.setObject(2, 34);
			// per.setObject(3, new java.sql.date(System.currentTimeMillis()));
			
			System.out.println("成功了吗?");
			//per.execute();运行语句,返回是否有结果集。
			//per.executeQuery();运行select语句,返回ResultSet结果集。
			
			//使用参数输出一下所操纵的行数。
			int connt = per.executeUpdate();//运行insert/update/delete操作,返回更新的行数
			System.out.println(”更新”+connt+”数据”);
		} catch (ClassNotFoundException e) {
			//抛出异常
			e.printStackTrace();
		} catch (SQLException e) {
			//抛出异常
			e.printStackTrace();
		}
	}
}

结果,数据库其实已经更新了

这个密码没有进行加密,所以可以直接显示出来

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值