面向对象程序设计(Java)实验12

实验内容和实验目的

一、实验目的

  1. 掌握Java数据库程序设计的基本方法。
    二、实验内容
    上机实现下列程序并观察程序的运行情况:
  2. 创建一学生数据库School,创建一表studb,包含字段:学号、姓名、性别、专业、入学年份。编写程序对studb表进行学生信息的增、删、改、查操作。

实验过程

实验要求里面没有要求是远程连接数据库还是本地连接,这里采用远程连接(数据库实验刚刚学了jdbc,这里就直接套用了)

远程连接

远程连接是基于OpenGauss数据库进行,需要postgresql.jar包。

环境配置可参考:
数据库实验九

简单来说环境配置步骤

  1. 修改postgresql.conf
  2. 修改pg_hba.conf
  3. 新建用户(openGauss不能使用默认账号omm连接)
  4. 将权限赋给新建的账户
  5. (配置客户端接入认证似乎是需要看电脑环境的其他配置情况,有些并不需要这一步)

代码:
远程创建表需要赋给角色系统权限

GRANT ALL PRIVILEGES TO shiyanjiu;

(ps:用户叫shiyanjiu是因为数据库实验九是远程连接)

在这里插入图片描述

package opengauss;

import java.sql.*;

public class java {
    
    

        //以下代码将获取数据库连接操作封装为一个接口,可通过给定用户名和密码来连接数据库。
        public static void main(String[] args) throws SQLException
        {
    
    
                //驱动类。
                String driver = "org.postgresql.Driver";
                //数据库连接描述符。
                String sourceURL = "jdbc:postgresql://192.168.56.124:26000/db_cc";
                Connection conn = null;

                try
                {
    
    
                        //加载驱动。
                        Class.forName(driver);
                }
                catch( Exception e )
                {
    
    
                        e.printStackTrace();
                }

                try
                {
    
    
                        //创建连接。
                        conn = DriverManager.getConnection(sourceURL, "shiyanjiu","openGauss@123");

                        Statement stmt = null;
                        // 执行查询
                        stmt = conn.createStatement();
                        //插入
                        String sql = "create table studb" +//建表的SQL语句
                                "(  sno int primary key," +
                                "   sname char(20)," +
                                "   sex char(5)," +
                                "   speciality char(20)," +
                                "   date date" +
                                " );";
                        Statement statement = conn.createStatement();
                        int rows = statement.executeUpdate(sql);

                        System.out.println("数据表创建成功");

                        statement.close();//关闭
                        conn.close();

                }
                catch(Exception e)
                {
    
    
                        e.printStackTrace();
                        return ;
                }

                return;
        }


}

在这里插入图片描述
增删改的话就变动代码中的sql语句就行

package opengauss;

import java.sql.*;

public class java {
    
    

        //以下代码将获取数据库连接操作封装为一个接口,可通过给定用户名和密码来连接数据库。
        public static void main(String[] args) throws SQLException
        {
    
    
                //驱动类。
                String driver = "org.postgresql.Driver";
                //数据库连接描述符。
                String sourceURL = "jdbc:postgresql://192.168.56.124:26000/db_cc";
                Connection conn = null;

                try
                {
    
    
                        //加载驱动。
                        Class.forName(driver);
                }
                catch( Exception e )
                {
    
    
                        e.printStackTrace();
                }

                try
                {
    
    
                        //创建连接。
                        conn = DriverManager.getConnection(sourceURL, "shiyanjiu","openGauss@123");

                        Statement stmt = null;
                        // 执行查询
                        stmt = conn.createStatement();
                        //插入
                        String sql = "insert into studb values('0001','张三','男','计算机类','2020-9-10');";
                        Statement statement = conn.createStatement();
                        int rows = statement.executeUpdate(sql);

                        System.out.println("数据插入成功");

                        statement.close();//关闭
                        conn.close();

                }
                catch(Exception e)
                {
    
    
                        e.printStackTrace();
                        return ;
                }

                return;
        }


}

在这里插入图片描述
连接数据库检查:
在这里插入图片描述在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_51594676/article/details/124998786