zoukankan      html  css  js  c++  java
  • 借助Java的JDBC自制“DBMS”管理操作数据库

     1 package jdbc;
     2 
     3 import java.sql.Connection;
     4 import java.sql.Driver;
     5 import java.sql.DriverManager;
     6 import java.sql.ResultSetMetaData;
     7 
     8 /**
     9  * @author liuwenlong
    10  * @create 2020-08-11 14:36:20
    11  */
    12 @SuppressWarnings("all")
    13 public class LwlSql {
    14     public static void main(String[] args) {
    15         Connection conn = null;
    16         try {
    17             //第一步,测试是否已经添加了操作oracle的jar包
    18             Class.forName("oracle.jdbc.driver.OracleDriver");
    19             //第二步:和数据库连接
    20             conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.3:1521:xe", "lwl", "123456");
    21             //第三步,创建执行sql语句的对象
    22             java.sql.Statement st = conn.createStatement();
    23 
    24             java.sql.ResultSet rs = null;
    25             byte[] b = new byte[300];
    26             String sql = null;
    27             while (true) {
    28                 try {
    29                     System.out.println("jwlSql>");
    30                     int len = System.in.read(b);
    31                     if (len < 5) {
    32                         System.err.println("invalid sql");
    33                         continue;
    34                     }
    35                     if (b[len - 2] == 13 && b[len - 1] == 10) {
    36                         len = len - 2;
    37                     } else {
    38                         len = len - 1;
    39                     }
    40                     sql = new String(b, 0, len);
    41                     if (sql.equals("exit") || sql.equals("quit")) {
    42                         System.out.println("welcome again!!");
    43                         return;
    44                     }
    45                     //查询
    46                     if (sql.startsWith("select")) {
    47                         rs = st.executeQuery(sql);
    48                         ResultSetMetaData md = rs.getMetaData();
    49                         int fld = md.getColumnCount();
    50                         for (int i = 1; i <= fld; i++) {
    51                             System.out.print(md.getColumnName(i) + "	");//显示列名字
    52                         }
    53                         System.out.println();
    54                         while (rs.next()) {//显示数据
    55                             for (int i = 1; i <= fld; i++) {
    56                                 System.out.print(rs.getString(i) + "		");
    57                             }
    58                             System.out.println();
    59                         }
    60                     } else {
    61                         st.executeUpdate(sql);
    62                     }
    63                 } catch (Exception e) {
    64                     System.err.println(e.getMessage());
    65                 }
    66             }
    67         } catch (Exception e) {
    68             System.err.println(e.getMessage());
    69         }
    70     }
    71 }

  • 相关阅读:
    【jquery ,ajax,php】加载更多实例
    关于scrollTop
    jquery 底部导航透明度变化
    jquery 处理密码输入框(input type="password" ) 模仿placeholder
    物化视图基于rowID快速刷新
    ora-01653 无法通过1024扩展
    oracle临时表空间
    java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.Integer
    redis 简单使用
    BigDecimal 运算
  • 原文地址:https://www.cnblogs.com/lwl80/p/13479421.html
Copyright © 2011-2022 走看看