JDBC完成增加

这篇博客介绍了如何使用JDBC进行数据库操作,主要聚焦于Oracle数据库的连接和数据插入步骤。首先,通过导入ojdbc6.jar包并加载Oracle驱动建立连接。接着,创建Statement对象来编译和发送SQL命令,然后编写插入数据的SQL语句,并执行executeUpdate()方法,根据返回值判断插入操作是否成功。最后,别忘了关闭数据库连接。

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

JDBC的基本使用流程:
    1 导入jar包:
        导入ojdbc6.jar,在项目上右键 builder path-->add to builder path.
    2 加载驱动 
        Class.forName("oracle.jdbc.driver.OracleDriver");
        作用:初始化加载jdbc类到java虚拟机.
        注意:
            ojdbc6.jar使用此包该句可以省略不写.        
    3 获取数据库连接对象
        Connection conn =DriverMananger.getConnection("url","username","password");
        参数含义:
            url:表示要连接的数据地址   (https://blog.youkuaiyun.com/wch812481245/article/details/80296602
            username:数据库的用户名
            password:数据库的密码
        作用:
            连接到指定的数据库并返回连接对象.
    4 创建sql命令对象
        Statement stmt=conn.createStatement();
        作用:
            编译,发送SQL命令
    5 创建sql命令
        String sql="insert into dept values(92,'','')";
    6 执行sql命令:
        新增sql命令:
            int i=stmt.executeUpdate(sql);
        返回值:
            返回值如果小于0,表示未执行成功
            返回值如果大于0,表示成功修改的数据量.
    7 关闭资源


------------------------------------------------------------------------------------------------------------------------------------------
 * 常见的jdbc错误:

 *         a ClassNotFoundException:
 *                 驱动类未找到.
 *         b   java.sql.SQLException: No suitable driver found for :thin:@localhost:1521:orcl
 *                 URL错误
 *         c    java.sql.SQLException: ORA-01017: invalid username/password; logon denied
 *                 用户 名或密码错误
 *         d    java.sql.SQLSyntaxErrorException: ORA-00900: 无效 SQL 语句
 *                 Sql语句错误
 *         e    java.sql.SQLIntegrityConstraintViolationException: ORA-00001: 违反唯一约束条件             (SCOTT.PK_DEPT)
 *                 主键冲突
-------------------------------

--------------------------------------------------------------------------------------------------------------
JDBC新增代码:
    

public class TestInsert1 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1 加载驱动类
        //Class.forName("oracle.jdbc.driver.OracleDriver");
        //2 获取数据库连接对象(连接指定的数据库)
        Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.101:1521:XE","scott","bjsxt")                       (使用oracle,有一个tnsnames.ora定义数据库地址的文件。用记事本直接打开,本地IP地址可通过cmd查询)
        //3 获取sql命令对象(编译和发送sql命令给数据库)
        Statement stmt=conn.createStatement();
        //4 创建sql命令
        String sql="insert into dept values(92,'华夏学院','武汉')";
        //5 指定sql命令
        int i=stmt.executeUpdate(sql);
        System.out.println("执行结果:"+i);
        //6 关闭资源
            stmt.close();
            conn.close();
    }
}
-

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
JDBC代码完善(全)
 

public class TestInsert2 {
	public static void main(String[] args){
		//声明jdbc变量
		Connection conn=null;
		Statement stmt=null;
		//声明JDBC参数
			String driver="oracle.jdbc.driver.OracleDriver";
			String url="jdbc:oracle:thin:@192.168.0.101:1521:XE";
			String username="scott";
			String password="oracle";
		//1 加载驱动类
		try {
			Class.forName(driver);
			//2 获取数据库连接对象(连接指定的数据库)
			conn=DriverManager.getConnection(url,username,password);
			//3 获取sql命令对象(编译和发送sql命令给数据库)
			stmt=conn.createStatement();
			//4 创建sql命令
			String sql="insert into dept values(97,'华夏学院','武汉')";
			//5 指定sql命令
			int i=stmt.executeUpdate(sql);
			System.out.println("执行结果:"+i);
			
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally{
			//6 关闭资源
			try {
				stmt.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			try {
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		
	}
}	

-

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值