连接数据库:
1.打开数据库可视化工具然后点击连接
2.选择要连接的数据库类型
跟到图片填(用户名不晓得的往下面看点搞在后面的)
这就连接成功了
查询当前登录用户的账号信息:
Sql
SELECT CURRENT_USER();
返回格式'user_name'@'host_name'`。
查看所有存在的MySQL用户账号,你需要先以一个有足够权限的用户(比如root用户)登录MySQL,然后执行以下命令:
Sql
SELECT user,host FROM mysql.user;
这个命令会列出MySQL中所有用户的用户名(user列)以及他们可以从哪个主机连接(host列)。在这个列表中,你可以找到你的用户名以及与之关联的主机信息。
创建库
在MySQL中创建一个数据库,你可以通过以下步骤来完成:
- 登录到MySQL:首先,登录到MySQL服务器。输入你的密码后,按回车键。
- 创建数据库:建一个名为my_new_database的数据库,
Sql
CREATE DATABASE my_new_database;
- 确认创建:使用SHOW DATABASES;命令来列出所有数据库:
Sql
SHOW DATABASES;
创建表
- 选择数据库:通过USE命令来选择刚刚创建的数据库:
Sql
USE my_new_database;
- 创建表:接下来,使用CREATE TABLE命令来创建新表,并定义它的字段及数据类型。设Id是主键且自动增长,item_name是字符串类型,Value也是字符串类型(根据实际需求,你可能需要调整字段类型):
Sql
CREATE TABLE first_table (
Id INT AUTO_INCREMENT PRIMARY KEY,
item_name VARCHAR(255) NOT NULL,
Value VARCHAR(255)
);
查询表
使用DESCRIBE或SHOW COLUMNS FROM命令:
Sql
DESCRIBE first_table;
或者
SHOW COLUMNS FROM first_table;
做完上面数据库部分就处理完成下面是程序部分
程序部分
1.下载mysql依赖包
首先去官网下载一个能够用Java处理mysql的依赖包
2.添加到库
mysql-connector-j-8.4.0.jar创建一个Java项目然后在项目根目录下新建一个文件夹"lib"将mysql-connector-j-8.4.0.jar复制到lib里
然后打开编辑器在lib目录下找到mysql-connector-j-8.4.0.jar
3.测试连接
然后修改代码进行测试
import java.sql.*;
import java.util.Scanner;
class DbConn {
public static Connection GetConn() {
String url = "jdbc:mysql://localhost:3306/my_new_database?useSSL=false&serverTimezone=UTC";
String user = "root"; // 替换为你的MySQL用户名
String password = "CST200212"; // 替换为你的MySQL密码
try {
return DriverManager.getConnection(url, user, password);
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
public class Main {
public static void main(String[] args) {
System.out.println( DbConn.GetConn());
}
}
测试结果
运行成功
然后调整代码做实现其他功能
实现粗略增删改查
增加数据
class Add {
public static void InsertData(String itemName, String value) throws SQLException {
String sql = "INSERT INTO first_table (item_name, Value) VALUES (?, ?)";
Connection conn = DbConn.GetConn();
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1, itemName);
preparedStatement.setString(2, value);
preparedStatement.executeUpdate();
}
}
更新数据
class Update {
public static void updateData(int id, String price) throws SQLException {
String sql = "UPDATE first_table SET Value = ? WHERE Id = ?";
Connection conn = DbConn.GetConn();
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1, price);
preparedStatement.setInt(2, id);
preparedStatement.executeUpdate();
}
}
删除
class Delete {
public static void deleteData(int id) throws SQLException {
String sql = "DELETE FROM first_table WHERE Id = ?";
Connection conn = DbConn.GetConn();
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setInt(1, id);
preparedStatement.executeUpdate();
}
}
查询
class SelectAll {
public static void selectData(int id) throws SQLException {
String sql = "SELECT * FROM first_table ";
Connection conn = DbConn.GetConn();
PreparedStatement preparedStatement = conn.prepareStatement(sql);
// preparedStatement.setInt(1, id);
ResultSet rs = preparedStatement.executeQuery();
while (rs.next()) {
String itemName = rs.getString("item_name");
String value = rs.getString("Value");
System.out.println("ID: " + id + ", Item Name: " + itemName + ", Value: " + value);
}
}
}
添加一个Alternative类用作简单的交互
class Alternative{
public static void alternative() {
Scanner scanner = new Scanner(System.in);
int choice=9;
// 处理换行符
while (choice!=5) {
System.out.println("选择操作:1-添加 2-修改 3-查询 4-删除 5-退出");
choice = scanner.nextInt();
scanner.nextLine();
try {
switch (choice) {
case 1:
System.out.println("输入项目名称:");
String itemName = scanner.nextLine();
System.out.println("输入项目值:");
String value = scanner.nextLine();
Add.InsertData(itemName, value);
System.out.println("数据已添加!");
break;
case 2:
System.out.println("输入要修改的ID:");
int updateId = scanner.nextInt();
scanner.nextLine(); // 处理换行符
System.out.println("输入新的值:");
String newValue = scanner.nextLine();
Update.updateData(updateId, newValue);
System.out.println("数据已修改!");
break;
case 3:
// System.out.println("输入要查询的ID:");
int queryId = 1;
SelectAll.selectData(queryId);
break;
case 4:
System.out.println("输入要删除的ID:");
int deleteId = scanner.nextInt();
Delete.deleteData(deleteId);
System.out.println("数据已删除!");
break;
case 5:
System.out.println("退出程序!");
break;
default:
System.out.println("无效选择!");
}
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
}
主程序Main
public class Main {
public static void main(String[] args) {
Alternative.alternative();
}
}