在运行程序之前需要在mysql数据库中创建test数据库,如下图所示:

下面是具体是实现程序:

  

 package News;

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner; public class News {
public static void main(String[] args) {
System.out.println("< < < < < < 使用ArrayList实现新闻管理系统 > > > > > >"); while (true) {
Scanner scanner = new Scanner(System.in);
System.out
.println("1. 查询全部新闻\n2. 添加新闻\n3. 删除新闻\n4. 按标题查询新闻\n5. 按标题修改新闻 \n0.退出\n请选择功能(1,2,3,4,5,0):");
int selected = scanner.nextInt(); switch (selected) {
case 1:
reads();
break; case 2:
System.out.println("请输入新闻标题:");
String title = scanner.next();
System.out.println("请输入新闻内容:");
String content = scanner.next();
System.out.println("请输入新闻备注:");
String remark = scanner.next(); add(title, content,remark);
break; case 3:
System.out.println("请输入新闻标题:");
String title2 = scanner.next();
delete(title2);
break; case 4:
System.out.println("请输入新闻标题:");
String title1 = scanner.next();
read(title1);
break; case 5:
System.out.println("请输入新闻标题:");
String title3 = scanner.next();
update(title3);
break; case 0:
scanner.close();
System.exit(0);
break; default:
System.out.println("输入错误,请重新输入:");
break;
}
}
} /**
* 定义添加新闻方法
*
* @param title
* 标题
* @param content
* 内容
*/
public static void add(String title, String content,String remark) {
try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
Statement st = conn.createStatement();
String sql = "insert into news values(null,'" + title + "','"
+ content + "','"+ remark + "')";
int row = st.executeUpdate(sql);
System.out.println(row > 0 ? "添加成功" : "添加失败");
} catch (Exception e) {
e.printStackTrace();
}
} /**
* 定义查询全部方法
*/
public static void reads() {
try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
Statement st = conn.createStatement();
String sql = "select * from news";
ResultSet list = st.executeQuery(sql);
if (list != null) {
while (list.next()) {
int id = list.getInt(1);
String title = list.getString(2);
String content = list.getString(3);
String remark = list.getString(4);
System.out.println(id + "\t" + title + "\t" + content
+ "\t" + remark);
}
}
} catch (Exception e) {
e.printStackTrace();
}
} /**
* 定义根据标题查询新闻的方法
*
* @param title1
* 新闻标题
*/
public static void read(String title1) {
try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
Statement st = conn.createStatement();
String sql = "select * from news where title='" + title1 + "'";
ResultSet row = st.executeQuery(sql);
if (row.next()) {
int id = row.getInt(1);
String title = row.getString(2);
String content = row.getString(3);
String remark = row.getString(4);
System.out.println(id + "\t" + title + "\t" + content + "\t"
+ remark);
}
} catch (Exception e) {
e.printStackTrace();
}
} /**
* 定义按标题删除新闻的方法
*
* @param title
* 新闻方法
*/
public static void delete(String title) {
try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
Statement st = conn.createStatement();
String sql = "delete from news where title='" + title + "'";
int row = st.executeUpdate(sql);
System.out.println(row > 0 ? "删除成功" : "删除失败");
} catch (Exception e) {
e.printStackTrace();
}
} /**
* 定义根据标题修改新闻的方法
*
* @param title
* 新闻标题
*/
public static void update(String title) { try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
Statement st = conn.createStatement();
String sql = "select * from news where title='" + title + "'";
ResultSet list = st.executeQuery(sql);
if (list.next()) {
Scanner sca = new Scanner(System.in);
System.out.println("请输入新的新闻标题:");
String title4 = sca.next();
System.out.println("请输入新闻内容:");
String content = sca.next();
System.out.println("请输入备注:");
String remark = sca.next(); String sql1 = "update news set title='" + title4
+ "',content='" + content + "',remark='" + remark + "' where title='"+title+"'";
System.out.println(sql1);
int u = st.executeUpdate(sql1);
System.out.println(u > 0 ? "修改成功" : "修改失败");
sca.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Mysql数据库的增删改查的更多相关文章

  1. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  2. shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)

    shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...

  3. 【转载】通过JDBC对MySQL数据库的增删改查

    通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...

  4. 通过Loadruner对mysql数据库进行增删改查

    操作mysql数据库,是在实现mysql数据源配置的基础上操作,可先阅读:loadrunner参数化使用mysql数据源失败解决方法 写之前先理一下,数据库访问流程:打开数据库  --> 数据库 ...

  5. 通过jdbc连接MySql数据库的增删改查操作

    一.获取数据库连接 要对MySql数据库内的数据进行增删改查等操作,首先要获取数据库连接 JDBC:Java中连接数据库方式 具体操作如下: 获取数据库连接的步骤: 1.先定义好四个参数 String ...

  6. c#winform简单实现Mysql数据库的增删改查的语句

    通过简单的SQL语句实现对数据库的增删改查. 窗口如下: 定义打开与关闭连接函数,方便每次调用: 增加指令: 删除指令: 修改指令: 查找指令: 表格情况:

  7. C++ API方式连接mysql数据库实现增删改查

    这里复制的 http://www.bitscn.com/pdb/mysql/201407/226252.html 一.环境配置 1,装好mysql,新建一个C++控制台工程(从最简单的弄起,这个会了, ...

  8. 【C#】使用NHibernate连接MySQL数据库及增删改查

    学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibe ...

  9. 使用nodejs连接mysql数据库实现增删改查

      首先要有数据库 使用xampp 或者 phpstudy 可以傻瓜式安装 新建一个项目文件夹 之后在这个目录下初始化package.json (npm init) 先在项目中安装mysql 和 ex ...

  10. 使用NHibernate连接MySQL数据库及增删改查

    学习资料 http://www.sikiedu.com/course/51/task/891/show https://www.codeproject.com/Articles/26123/NHibe ...

随机推荐

  1. HBuilder android 打包指南(V客学院技术分享)

    前提:确保配置文件(manifest.json)已配置完,没有异常. 打包选项如下: Android 包名 :在Android系统中是判断一个App的唯一标识,不同的App可以有同样的名字,但是它的包 ...

  2. php 输出 sql语句

    第一种方法 $data = M('news')->field("title,date_format(postdate,'%Y-%m-%d') as postdate,content&q ...

  3. 使用svn的过程中check out的文件路径中的文件图标全都加上了“蓝色问号”的解决方案

    (1)你在对同一层目录下创建一个记事本文件,然后把下面这句话复制进去 for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q &q ...

  4. 【c++ primer, 5e】返回类型和return语句

    [无返回值函数] 1.在c++的void函数中,可以显式地使用return;语句来提前结束函数的调用. [有返回值函数] 1.值是如何被返回的:返回一个值的方式和初始化一个变量或者形参的方式完全一样. ...

  5. Python面试题之Python中的lambda map filter reduce zip

    当年龟叔想把上面列出来的这些都干掉.在 “All Things Pythonic: The fate of reduce() in Python 3000”这篇文章中,他给出了自己要移除lambda. ...

  6. kerberos master-slave搭建

    1. 安装kerberos server yum install krb5-server krb5-libs krb5-auth-dialog client yum install krb5-work ...

  7. ECU

    ECU(Electronic Control Unit)电子控制单元,又称“行车电脑”.“车载电脑”等.从用途上讲则是汽车专用微机控制器,也叫汽车专用单片机.它和普通的单片机一样,由微处理器(CPU) ...

  8. SVN主从高可用

    https://blog.csdn.net/conwayli/article/details/80235738

  9. [Deep Learning] 神经网络基础【转】

    本文转载自:http://www.cnblogs.com/maybe2030/p/5597716.html 阅读目录 1. 神经元模型 2. 感知机和神经网络 3. 误差逆传播算法 4. 常见的神经网 ...

  10. terminal配置

    阅读目录 前言 使用 tmux 复用控制台窗口 在命令行中快速移动光标 在命令行中快速删除文本 快速查看和搜索历史命令 快速引用和修饰历史命令 录制屏幕并转换为 gif 动画图片 总结 回到顶部 前言 ...