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;
} }
}

Mysql数据库基础小实例 学员管理系统菜单的更多相关文章

  1. MySQL数据库基础详解(非原创)

    文章大纲 一.数据库简介二.Mysql数据库简介三.Mysql安装与服务启动(Windows版本)四.Mysql图形化工具五.Mysql存储引擎精讲六.Mysql数据类型介绍七.Mysql主要专业名称 ...

  2. MySQL数据库--基础简述

    MySQL数据库--基础简述 1.15.1 MySQL简介 Mysql是最流行的RDBMS(Relational Database Management System:关系数据库管理系统),特别是在W ...

  3. MySQL数据库基础

    MySQL数据库基础 本文的所有操作是基于CMD环境,MySQL通过在命令行中输入SQL语句对数据库进行操作.配置问题可参考<打通MySQL的操作权限>中的内容,该文算是针对前期的环境配置 ...

  4. MySQL数据库入门多实例配置

    MySQL数据库入门——多实例配置 前面介绍了相关的基础命令操作,所有的操作都是基于单实例的,mysql多实例在实际生产环境也是非常实用的,因为必须要掌握 1.什么是多实例 多实例就是一台服务器上开启 ...

  5. php面试专题---15、MySQL数据库基础考察点

    php面试专题---15.MySQL数据库基础考察点 一.总结 一句话总结: 注意:只写精品 1.mysql定义int(3),那么我存1234就错了么? 不是:无影响:只会影响显示字符的个数:可以为整 ...

  6. MySQL数据库基础知识及优化

    MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...

  7. 26.MySQL数据库基础

    MySQL数据库基础 目录 MySQL数据库基础 数据库的概念 数据 表 数据库 数据库的管理系(DBMS) 数据库系统 访问数据库的流程 数据库系统发展史 当今主流数据库介绍 关系数据库 关系数据库 ...

  8. PHP连接局域网MYSQL数据库的简单实例

    PHP连接局域网MYSQL数据库的简单实例 [php] view plaincopy <?PHP /** * php连接mysql数据库 * by www.jbxue.com */ $conn= ...

  9. mysql数据库基础的简单操作指南

    最近在学习mysql,本文是做的关于mysql学习的笔记,跟大家分享一下,希望对大家学习mysql知识有所助益.mysql现在几乎已经成了网站建设的主流数据库,很多php网站系统都采用了mysql数据 ...

随机推荐

  1. WPF中的Bitmap与byte

    原文:WPF中的Bitmap与byte public MainWindow() { InitializeComponent(); byte[] b = GetPictureData(@"F: ...

  2. python 文本特征提取 CountVectorizer, TfidfVectorizer

    1. TF-IDF概述 TF-IDF(term frequency–inverse document frequency)是一种用于资讯检索与文本挖掘的常用加权技术.TF-IDF是一种统计方法,用以评 ...

  3. FreeCAD源码初步了解

    FreeCAD简介 FreeCAD是基于OpenCASCADE的开源CAD/CAE软件,完全开源(GPL的LGPL许可证),官方源码地址,详情可参考维基百科,百度百科等等. 如果要编译FreeCAD, ...

  4. Centos6下zookeeper集群部署记录

    ZooKeeper是一个开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等. Zookeeper设计目的 最终一致性:client不论 ...

  5. Linux下FTP环境部署梳理(vsftpd和proftpd)

    在日常运维工作中,常部署到的FTP是vsftpd和proftd.之前写了Linux下FTP虚拟账号环境部署总结,下面简单说下本地用户下的FTP环境部署过程: 简单梳理下FTP主动和被动两种工作模式: ...

  6. Python运算符-4

    #and or not #优先级,()> not > and > or print(2 > 1 and 1 < 4) print(2 > 1 and 1 < ...

  7. Linux内核读书笔记第四周

    进程管理 1.进程描述符及任务结构 进程存放在叫做任务队列(task list)的双向循环链表中.链表中的每一项包含一个具体进程的所有信息,类型为task_struct,称为进程描述符(process ...

  8. <编写有效用例>读书笔记3

    <编写有效用例>读书笔记3 第三部分主要内容是对忙于编写用例的人的提示第20章:对每个用例的提示1.每个用例都是一篇散文:这个提示提醒我们将注意力集中与文字而不是图画上,同时帮助了解将要遇 ...

  9. 6-Python3从入门到实战—基础之数据类型(元组-Tuple)

    Python从入门到实战系列--目录 元组的定义 定义元组只需要在括号中添加元素,并使用逗号隔开即可 tup = ('Python','Java','C++','Kotlin') 元组与列表的区别 P ...

  10. FreeMarker boolean Issue

    FreeMarker template error:Can't convert boolean to string automatically, because the "boolean_f ...