现在的位置: 首页 > 综合 > 正文

Mysql数据库基础小实例 学员管理系统菜单

2013年04月07日 ⁄ 综合 ⁄ 共 3018字 ⁄ 字号 评论关闭
package test;
import java.sql.*;
import java.util.Scanner;
public class testSql002_StudentTest {
	/**
	 * 获得数据库连接的
	 * @return 数据库连接对象
	 * @throws Exception
	 */
	static Scanner input = new Scanner(System.in);
	public static Connection getCon() throws Exception{
		String qudong = "com.mysql.jdbc.Driver";
		String url = "jdbc:mysql://localhost:3306/studentdb";
		String name = "root";
		String pwd = "123";
		//加载驱动 java和数据库的桥梁搭建好了
		Class.forName(qudong);
		//获得数据库连接 可以通过api连接数据库对数据库进行操作了
		Connection con = DriverManager.getConnection(url,name,pwd);
		return con;
	}
	/*显示学员的详细信息*/
	public static void showStu() throws Exception{
		Connection con = getCon();
		//显示stu表中的学号,姓名,地址????
		Statement st = con.createStatement();//执行sql语句
		String sql = "select * from stu";
		//st.executeQuery(sql) //执行select 语句的  ResultSet
		//st.executeUpdate(sql)  //执行 insert update delete语句 int 受影响的行数
		ResultSet rs = st.executeQuery(sql);//执行查询语句获得结果

		while(rs.next()){//读取下一行记录  读到数据返回 true没有数据false
			String stuid = rs.getString(1); //索引值  列名 读取列的信息
			String stuname = rs.getString(2);
			String stuaddress = rs.getString("stuaddress");
			System.out.println(stuid+"\t"+stuname+"\t"+stuaddress);//控制台显示
		}	
		con.close();//关闭数据库连接
		//问题:读取所有行 的数据  while(rs.next())
	}
	/*添加数据*/
	public static void addStu() throws Exception{

		Connection con = getCon();//获得数据库连接对象
		//向表中添加一行数据  
		Statement st = con.createStatement();//工具  执行sql
		//用户输入数据,把控制台输入的数据添加到数据库中
		System.out.print("请输入学号:");
		int sno = input.nextInt();
		System.out.print("请输入java成绩:");
		int sjava = input.nextInt();
		System.out.print("请输入html成绩:");
		int shtml = input.nextInt();
		System.out.print("请输入sql成绩:");
		int smysql = input.nextInt();
		//	String sql = "insert score values("+sno+","+sjava+","+smysql+")";
		// %s   %f   %c  %d    格式化字符串,变量列表
		String sql = String.format("insert score values(%d,%d,%d,%d)",sno,sjava,shtml,smysql);
		int n = st.executeUpdate(sql);//  1 
		if(n>0){
			System.out.println("添加成功");
		}else{
			System.out.println("添加失败");
		}
		con.close();
	}
	/*修改数据*/
	private static void updateStu() throws Exception {
		Connection con = getCon();
		Statement st = con.createStatement();

		System.out.println("请输入学员的住址:");
		String stuaddress = input.next();
		String sql =String.format("UPDATE stu SET stuaddress = '%s' WHERE stuaddress ='%s'", stuaddress,"北京");
		System.out.println(sql);
		int n = st.executeUpdate(sql);
		if(n>0){
			System.out.println("修改成功");
		}else{
			System.out.println("修改失败");
		}
		con.close();

	}
	/*删除学员信息*/
	private static void deleteStu() throws Exception {
		Connection con = getCon();
		Statement st = con.createStatement();

		System.out.println("请输入要删除学员的编号:");
		int sid = input.nextInt();
		String sql =String.format("DELETE FROM stu WHERE sid =%d", sid);
		System.out.println(sql);
		int n = st.executeUpdate(sql);
		if(n>0){
			System.out.println("删除成功");
		}else{
			System.out.println("删除失败");
		}
		con.close();

	}
	public static void main(String[] args) throws Exception{
		System.out.println("********学员管理系统菜单**********");
		System.out.println("*   1.查询学员数据;            ");
		System.out.println("*   2.添加学员成绩信息;");
		System.out.println("*   3.修改学员信息;");
		System.out.println("*   4.删除学员信息;");
		System.out.println("*********************************");
		Scanner input = new Scanner(System.in);
		int n = 0;
		System.out.print("---请输入选择:");
		n = input.nextInt();
		switch(n){
		case 1:showStu();break;
		case 2:addStu();break;
		case 3:  updateStu();break;//修改学员信息
		case 4:  deleteStu();break;//删除学员信息
		default:System.out.println("选择错误!");break;
		}

	} 
}

抱歉!评论已关闭.