JDBC基本操作:データベースの添削

4033 ワード

JDBC基本操作:データベースの添削
1.JDBCとは?
つまりJava Database Connectivity、略称JDBCです.Java言語でクライアント・プログラムがデータベースにどのように日にアクセスするかを規範化するインタフェースであり、データベース内のデータのクエリーや更新などの方法を提供します.簡単に言えば、JDBCはSQL文を実行するためのJava APIです.JDBCではJavaプログラミングを直接使用してデータベースを操作することができ、開発者が純粋なJava言語でSQLの実行を完了することができます.
2.JDBCを学ぶ前の準備
まず、mysqlなどの基本的なデータベースを理解し、基本的なSQL文を理解する必要があります.例えば、削除や検索など、DOSコマンドを使用してデータベースを基本的に操作することができます.次に、Javaの基礎が必要です.
3.JDBC基本操作
(1)データベースへの接続
データベースへの接続は、削除・変更前に確立する必要があります.
 
public Connection connect() throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException {
		Connection cnn=null;
		String drive="com.mysql.jdbc.Driver";//  
		String url="jdbc:mysql://localhost:3306/test1";//     
		String user="root";//      
		String password="";//  
		Class.forName(drive).newInstance();//    ,          
		cnn=DriverManager.getConnection(url,user,password);//    
		return cnn;
	}

 
 
(2)add操作
 
public void insert() throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException {
		Connection cnn=this.connect();//    
		String sql="insert into student(id,name) values(?,?)";//SQL  
		java.sql.PreparedStatement ppst= cnn.prepareStatement(sql);//     SQL    
		ppst.setInt(1, 3);//    ?   3
		ppst.setString(2, "zhanghanzhi");//    ?   "zhanghanzhi",    SQL  
		int count=ppst.executeUpdate();
		if(count>0){
			System.out.println("      ,        "+count);
		}else {
			System.out.println("      ");
		}
	}

 (3)delete操作
 
 
public void delete(int id) throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException{
		Connection cnn=this.connect();//    
		String sql="delete from student where id=?";//SQL  
		java.sql.PreparedStatement  ppst=cnn.prepareStatement(sql);//     SQL  
		ppst.setInt(1, id);//    ?   id,    SQL  
		int i=ppst.executeUpdate();
		if(i>0){
			System.out.println("    ");
		}
		else{
			System.out.println("    ");
		}
	}

 (4)update操作
 
 
public void update(int id) throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException{
		Connection cnn=this.connect();//    
		String sql="update student set name='zhanghanzhi' where id=?";//SQL  
		java.sql.PreparedStatement ppst=cnn.prepareStatement(sql);//     SQL  
		ppst.setInt(1,id);//    ?   id,  SQL  
		int i=ppst.executeUpdate();
		if(i>0){
			System.out.println("    ");
		}else{
			System.out.println("    ");
		}
		
		
	}

 (5)queryById操作
public void queryById(int id) throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException{
		Connection cnn=this.connect();
		String sql="select *from student where id=?";
		java.sql.PreparedStatement ppst=cnn.prepareStatement(sql);
		ppst.setInt(1, id);
		ResultSet rs=ppst.executeQuery();
		if(rs.next()){
			int newid;
			String s;
			newid=rs.getInt(1);
			s=rs.getString(2);
			System.out.println(newid+"       "+s);
		}
		
		
	}

 (6)select操作
	public void select() throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException{
		Connection cnn=this.connect();
		String sql="select * from student";
		java.sql.PreparedStatement ppst=cnn.prepareStatement(sql);
		ResultSet rs=ppst.executeQuery();
		while(rs.next()){
			System.out.println(rs.getInt(1)+"   "+rs.getString(2));
		}
	}