⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dboperate.java

📁 这是一个班级 教师 学生 课程管理的软件实现对学生教师课程的添加修改删除查询
💻 JAVA
字号:
package dboperate;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Vector;
import javax.swing.JOptionPane;




public class dboperate {
	Connection conn=null;
	Statement stm=null;
	ResultSet rs=null;	
	
	//struct
	public dboperate() {
		connectDB("localhost","1433","sa","sa");
	}
	
//	/**
//	 * 加载数据库驱动并建立连接
//	 * @连接成功返回true
//	 */
//	public boolean connectDB(){
//		String DBurl="jdbc:microsoft:sqlserver://localhost:1433;databasename=schools";
//		boolean conok=false;
//		try {
//			//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//			Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//加载jdbc驱动
//			conn=DriverManager.getConnection(DBurl, "sa", "sa");
//			conok=true;
//		} catch (ClassNotFoundException e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();			
//			JOptionPane.showMessageDialog(null, "加载数据库驱动失败!");
//			
//		} catch (SQLException e) {
//			// TODO Auto-generated catch block
//			JOptionPane.showMessageDialog(null, "数据库连接出错请检查数据库!");
//			e.printStackTrace();
//		}
//		
//		return conok;
//	}//end empty connect
	
	/**
	 * 连接数据库方法 重载connectDB dboperate中
	 * @param hostName 主机名
	 * @param portsNum 端口号
	 * @param uname 数据库用户名
	 * @param upwd 数据库用户密码
	 * @return 连接成功返回true 
	 */
	public boolean connectDB(String hostName,String portsNum,String uname,String upwd){
		String DBurl="jdbc:microsoft:sqlserver://"+hostName+":"+portsNum+";databasename=schools";
		boolean conok=false;
		try {
			//Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");//加载jdbc驱动
			conn=DriverManager.getConnection(DBurl, uname, upwd);
			conok=true;
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();			
			JOptionPane.showMessageDialog(null, "加载数据库驱动失败!");
			
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			JOptionPane.showMessageDialog(null, "数据库连接出错请检查数据库!");
			e.printStackTrace();
		}
		
		return conok;
	}//end empty connect
	
	/**
	 * 传入一个表名 和一个数字的主键列 返回主键列中最大的数字+1后的值
	 * @param 表的名字
	 * @param 主键列名 必需是数字!
	 * @return
	 */
	public int howMuchline(String tableName,String columnName){
		int linea=0;//返回多少行默认0
		try {
			stm=conn.createStatement();
			String sqls="select max("+columnName+") from "+tableName;
			rs=stm.executeQuery(sqls);	
			if(rs.next()){
				linea=rs.getInt(1)+1;
			}			
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			JOptionPane.showMessageDialog(null, "没有结果返回!");
		}
		
		return linea;
		
	}//结束编号
	
	
	/**
	 * 执行sql语句的方法
	 * @param 传入一个sql语句
	 * @return执行成功返回true
	 */
	public boolean executeSqls(String sqls){
		boolean excuteok=false;
		try {
			stm=conn.createStatement();
			stm.execute(sqls);
			excuteok=true;
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			JOptionPane.showMessageDialog(null, "语句执行失败!");
			//e.printStackTrace();
		}
		return excuteok;
		
	}
	
	/**
	 * 查询并返回结果方法
	 * @param 传入一个sqls语句
	 * @return 返回一个容器
	 */
	public Vector selectDB(String sqls){
		Vector vt=new Vector();
		try {
			stm=conn.createStatement();
			rs=stm.executeQuery(sqls);
			ResultSetMetaData rm=rs.getMetaData();
			while(rs.next()){
				Vector rows=new Vector();
				for(int i=1;i<=rm.getColumnCount();i++){
					rows.add(rs.getString(i));
				}
				vt.add(rows);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}				
		return vt;		
	}//end select
	
	/**
	 * 关闭数据库方法
	 * @return 关闭成功返回true
	 */
	public boolean closeDB(){
		boolean closeok=false;
		if(rs!=null){
			try {
				rs.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}finally{
				rs=null;
			}
		}
		if(stm!=null){
			try {
				stm.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}finally{
				stm=null;
			}
		}
		
		if(conn!=null){
			try {
				conn.close();
				closeok=true;
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}finally{
				conn=null;
			}
		}
		return closeok;
	}
	
	/**
	 * 根据用户名返回用户个数
	 * @param 用户名
	 * @return 用户个数
	 */
	public int findUsersum(String uname){
		int usersums=0;
		try {
			stm=conn.createStatement();
			rs=stm.executeQuery("select count(*) from userst where uname='"+uname+"'");
			if(rs.next()){
				usersums=rs.getInt(1);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return usersums;
	}
	
	public String findUserpass(String uname){
		String upwds="";
		try {
			stm=conn.createStatement();
			rs=stm.executeQuery("select upwd from userst where uname='"+uname+"'");
			if(rs.next()){
				upwds=rs.getString(1);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return upwds;
		
	}
//	//start main
//	public static void main(String[] args) {
//		dboperate db=new dboperate();
//		System.out.println(db.howMuchline("zhuanyet", "zyid"));
//		System.out.println(db.selectDB("select * from zhuanyet"));
//		System.out.println(db.findUsersum("vslk"));
//		System.out.println(db.findUserpass("vsk"));
//		
//	}//end main

}//end dboperate class

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -