Java对mysql数据库的增删改查创表5个操作

来源:互联网 发布:c语言文件指针换行 编辑:程序博客网 时间:2024/06/06 19:30
发现非常水啊,全是一个套路,就是根据sql语句通过字符串实现这个操作。然后注意插入时主码要不一样,否则会报错。
给出我的代码。
我的mysql表名称为test下的,然后表的名字为tablename,tablename1之类的。
这几个操作,全都实现了一遍?发现好简单啊。?
所以玩了一个晚上发现,可以搞搞大作业了啊?
package mywork.com;import java.sql.*;import java.text.DecimalFormat; // DecimalFormat df = new DecimalFormat("#0.000");import java.util.Scanner;import java.math.*;import java.io.*;import java.text.*;import java.util.Arrays; // Arrays.sort(s);import java.math.BigInteger;import java.util.Queue;import java.util.LinkedList;import java.util.Random;public class code1 {public final static Scanner cin = new Scanner(System.in);public static void main(String[] args) {int a = 6;// // System.out.println(a);// try {// Class.forName("com.mysql.jdbc.Driver"); // 线加载驱动// // System.out.println(888);// } catch (ClassNotFoundException e) {// System.out.println("找不到驱动程序类 ,加载驱动失败!");// e.printStackTrace();// }try {Class.forName("com.mysql.jdbc.Driver"); // 先加载驱动// System.out.println(888);String url = "jdbc:mysql://localhost:3306/test"; // 数据库名称String username = "root"; // 账号String password = "root"; // 密码Connection con = DriverManager.getConnection(url, username,password); // 通过这个接口连接数据库。// String sql =// "CREATE TABLE tableName5(id int not null, name varchar(20) not null, age int null, primary key (id));";// // 创建一个表,名字为tablename (id为int,name为字符串,age为int,这个好像是主码?主码为id)// PreparedStatement pstmt = con.prepareStatement(sql);// pstmt.executeUpdate();String[] createtable = new String[100];for (int i = 0; i < 0; i++) {cin.useDelimiter("\n"); // 输入带有空格的字符串createtable[i] = cin.nextLine();// String sql =// "CREATE TABLE tableName5(id int not null, name varchar(20) not null, age int null, primary key (id));";// // 创建一个表,名字为tablename (id为int,name为字符串,age为int,这个好像是主码?主码为id)// 这样就可以直接通过输入创建多个表了,很简单,,只要改改名字就可以拉?PreparedStatement pstmt = con.prepareStatement(createtable[i]);pstmt.executeUpdate();}String[] insert = new String[100];for (int i = 0; i < 0; i++) {// String sqlq=cin.next();cin.useDelimiter("\n"); // 输入带有空格的字符串insert[i] = cin.nextLine();// String sqlq// ="insert into tableName(id,name,age) values(524323,'123456',22)";// 这个直接改成输入,,然后就可以插入N条数据啦= =// 插入时注意每个主码必须是不同的。Statement stmt = con.createStatement();stmt.executeUpdate(insert[i]);}String[] delete = new String[100];for (int i = 0; i < 0; i++) {cin.useDelimiter("\n"); // 输入带有空格的字符串delete[i] = cin.nextLine();// String qq="delete from tablename5 where id>=2;";// 直接输入要删除的表的特征,然后就可以删除N条数据啦。Statement stmt1 = con.createStatement();stmt1.executeUpdate(delete[i]);}String[] update = new String[100];for (int i = 0; i < 0; i++) {cin.useDelimiter("\n"); // 输入带有空格的字符串update[i] = cin.nextLine();// String// sql11="update tablename set age=20,set name='lalal' where id=52323 ";//生成一条mysql语句// 直接输入要更新的表的特征,然后就可以更新N条数据啦。Statement lalala = con.createStatement();lalala.executeUpdate(update[i]);}String[] query = new String[100];for (int i = 0; i < 0; i++) {// String sql123 =// "SELECT `id`, `name`,`age` FROM `test`.`tablename` LIMIT 0, 1000;";// 要执行的SQLcin.useDelimiter("\n"); // 输入带有空格的字符串query[i] = cin.nextLine();// 还是一个套路啊,将上面的sql语句改成输入,,然后tablename换一下名字,0,1000为1000条表中的数据Statement stmt11 = con.createStatement();ResultSet rs = stmt11.executeQuery(query[i]);// 创建数据对象,通过rs来调用表中的数据System.out.println("编号" + "\t" + "姓名" + "\t" + "年龄");while (rs.next()) {System.out.print(rs.getInt(1) + "\t"); // 第一个数据System.out.print(rs.getString(2) + "\t"); // 第二个为字符串类型的System.out.print(rs.getInt(3) + "\t"); // 第三个System.out.println();}rs.close();stmt11.close();con.close();}System.out.println("success");con.close();} catch (ClassNotFoundException e) {System.out.println("找不到驱动程序类 ,加载驱动失败!");e.printStackTrace();} catch (SQLException se) {System.out.println("失败");se.printStackTrace();}}}

0 0
原创粉丝点击