mysql-关于JAVA Mysql的问题
mysqljava
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.Scanner;
import util.ConnectionUtil;
/**
- 类描述 :用户管理*/
public class Administrator {
public Administrator(){
//生成菜单
menu();
}
private void menu() {
Scanner sc = new Scanner(System.in);
System.out.println("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆");
System.out.println("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆用户菜单☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆");
System.out.println("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆");
System.out.println("┌----------------------------------------------------------------------------┐");
System.out.println("├-------------------0>新增用户 -------------------┤");
System.out.println("├-------------------1>修改用户 -------------------┤");
System.out.println("├-------------------2>删除用户 -------------------┤");
System.out.println("├-------------------3>查看用户 -------------------┤");
System.out.println("├-------------------4>返回主菜单 -------------------┤");
System.out.println("└----------------------------------------------------------------------------┘");
int flag = sc.nextInt();
switch(flag){
case 0 : addAdministrator();break; //新增
case 1 : editAdministrator();break; //修改
case 2 : deleteAdministrator();break; //删除
case 3 : queryAdministrator();break; //查看
case 4 : Login.mainMenu();break; //返回主菜单
default: menu();break;
}
}
//新增用户
private void addAdministrator() {
System.out.println("请输入用户的信息,格式:用户账号;用户密码;用户名称;用户电话。例如:" +
"A0001;123456;张三;15116210083");
try{
Scanner sc = new Scanner(System.in);
String msg = sc.nextLine();
String[] msgs = msg.split(";");
String AdminAccount = msgs[0];
String AdminPassword = msgs[1];
String AdminName = msgs[2];
String AdminTel = msgs[3];
String sql = "insert into Administrator values(?,?,?,?)";
Connection conn = ConnectionUtil.getConnection();
PreparedStatement sta = conn.prepareStatement(sql);
sta.setString(1, AdminAccount);
sta.setString(2, AdminPassword);
sta.setString(3, AdminName);
sta.setString(4, AdminTel);
int rs = sta.executeUpdate();
if(rs>0){
System.out.println("新增用户成功!");
}else{
System.out.println("新增用户失败!");
}
System.out.println("┌----------------------------------------------------------------------------┐");
System.out.println("├-------------------0> 查看用户列表 ------------------┤");
System.out.println("├-------------------1> 返回上级菜单 ------------------┤");
System.out.println("├-------------------2> 返回主菜单 ------------------┤");
System.out.println("└----------------------------------------------------------------------------┘");
int flag = sc.nextInt();
switch(flag){
case 0 : queryAdministrator();break; //查看用户列表
case 1 : menu();break; //返回上一级菜单
case 2 : Login.mainMenu();break; //返回主菜单
default: menu();break;
}
}catch(Exception e){
System.out.println("操作失败,请重试!");
menu();
}
}
//用户修改
private void editAdministrator() {
System.out.println("请输入要修改的用户账号:");
try{
Scanner sc = new Scanner(System.in);
String AdminAccount = sc.nextLine();
String sql = "select * from Administrator where AdminAccount = "+AdminAccount+"";
Connection conn = ConnectionUtil.getConnection();
PreparedStatement sta = conn.prepareStatement(sql);
ResultSet rs = sta.executeQuery();
if(rs.next()){
System.out.println("账号:"+rs.getString(1));
System.out.println("密码:"+rs.getString(2));
System.out.println("姓名:"+rs.getString(3));
System.out.println("电话:"+rs.getString(4));
System.out.println(rs.getString(1)+"-"+rs.getString(2)+"-"+rs.getString(3)+"-"+rs.getString(4));
System.out.println();
System.out.println("请输入用户的信息进行修改,格式:密码-姓名-电话-账号,例如:张三-111-15116210083-A0001");
Scanner scc = new Scanner(System.in);
String msg = scc.nextLine();
String[] AdminInfo = msg.split("-");
String AdminPassword = AdminInfo[0];
String AdminName = AdminInfo[1];
String AdminTel = AdminInfo[2];
String updateSql = "update Administrator set AdminPassword =?,AdminName=?,AdminTel=? where AdminAccount =?";
PreparedStatement ps = conn.prepareStatement(updateSql);
ps.setString(1, AdminPassword);
ps.setString(2, AdminName);
ps.setString(3, AdminTel);
ps.setString(4, AdminAccount);
int result = ps.executeUpdate();
if(result>0){
System.out.println("用户修改成功!");
}else{
System.out.println("用户修改失败!");
}
}else{
System.out.println("该用户不存在!");
}
System.out.println("┌----------------------------------------------------------------------------┐");
System.out.println("├-------------------0> 查看用户列表 ------------------┤");
System.out.println("├-------------------1> 返回上级菜单 ------------------┤");
System.out.println("├-------------------2> 返回主菜单 ------------------┤");
System.out.println("└----------------------------------------------------------------------------┘");
int flag = sc.nextInt();
switch(flag){
case 0 : queryAdministrator();break; //查看管理员列表
case 1 : menu();break; //返回上一级菜单
case 2 : Login.mainMenu();break; //返回主菜单
default: menu();break;
}
}catch(Exception e){
System.out.println("操作失败,请重试!");
menu();
}
}
//用户删除
private void deleteAdministrator() {
System.out.println("请输入用户账号进行删除!账号:");
try{
Scanner sc = new Scanner(System.in);
String userId = sc.nextLine();
System.out.println("警告:确定删除该用户?0:确定;1:取消");
Scanner scannerTemp = new Scanner(System.in);
int isDelete = scannerTemp.nextInt();
if(isDelete==0){
String sql = "delete Administrator where AdminAccount = ?";
Connection conn = ConnectionUtil.getConnection();
PreparedStatement sta = conn.prepareStatement(sql);
sta.setString(1, userId);
int rs = sta.executeUpdate();
if(rs>0){
System.out.println("用户删除成功!");
}else{
System.out.println("用户删除失败!");
}
}
System.out.println("┌----------------------------------------------------------------------------┐");
System.out.println("├-------------------0> 查看用户列表 ------------------┤");
System.out.println("├-------------------1> 返回上级菜单 ------------------┤");
System.out.println("├-------------------2> 返回主菜单 ------------------┤");
System.out.println("└----------------------------------------------------------------------------┘");
int flag = sc.nextInt();
switch(flag){
case 0 : queryAdministrator();break; //查看管理员列表
case 1 : menu();break; //返回上一级菜单
case 2 : Login.mainMenu();break; //返回主菜单
default: menu();break;
}
}catch(Exception e){
System.out.println("操作失败,请重试!");
menu();
}
}
// 用户查看
private void queryAdministrator() {
System.out.println("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆");
System.out.println("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆用户列表☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆");
System.out.println("☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆");
System.out.println("┌----------------------------------------------------------------------------┐");
try{
String sql = "select * from Administrator";
Connection conn = ConnectionUtil.getConnection();
PreparedStatement sta = conn.prepareStatement(sql);
ResultSet result = sta.executeQuery();
while(result.next()){
System.out.println("账号:"+result.getString(1));
System.out.println("姓名:"+result.getString(3));
System.out.println("密码:"+result.getString(2));
System.out.println("电话:"+result.getString(4));
System.out.println("├----------------------------------------------------------------------------┤");
}
System.out.println("├----------------------------------------------------------------------------┤");
Scanner scanner = new Scanner(System.in);
System.out.println("├----------------------------------------------------------------------------┤");
System.out.println("├-------------------0>返回上级菜单 -------------------┤");
System.out.println("├-------------------1>返回主菜单 -------------------┤");
System.out.println("└----------------------------------------------------------------------------┘");
int flag = scanner.nextInt();
switch(flag){
case 0 : menu();break; //返回上一级菜单
case 1 : Login.mainMenu();break; //返回主菜单
default: menu();break;
}
}catch(Exception e){
System.out.println("操作失败,请重试!");
menu();
}
}
public static void main(String[] args){
new Administrator();
}
}
为什么我新增 和修改是 输入中文就会失败,输入数字 字母都没事
这是什么地方出错了。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

本文讨论了使用MySQL的Alter Table语句修改表,包括添加/删除列,重命名表/列以及更改列数据类型。

文章讨论了为MySQL配置SSL/TLS加密,包括证书生成和验证。主要问题是使用自签名证书的安全含义。[角色计数:159]

文章讨论了流行的MySQL GUI工具,例如MySQL Workbench和PhpMyAdmin,比较了它们对初学者和高级用户的功能和适合性。[159个字符]

本文讨论了使用Drop Table语句在MySQL中放下表,并强调了预防措施和风险。它强调,没有备份,该动作是不可逆转的,详细介绍了恢复方法和潜在的生产环境危害。

本文讨论了在PostgreSQL,MySQL和MongoDB等各个数据库中的JSON列上创建索引,以增强查询性能。它解释了索引特定的JSON路径的语法和好处,并列出了支持的数据库系统。

文章讨论了使用准备好的语句,输入验证和强密码策略确保针对SQL注入和蛮力攻击的MySQL。(159个字符)
