package jdbc;

 import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSetMetaData; /**
* @author liuwenlong
* @create 2020-08-11 14:36:20
*/
@SuppressWarnings("all")
public class LwlSql {
public static void main(String[] args) {
Connection conn = null;
try {
//第一步,测试是否已经添加了操作oracle的jar包
Class.forName("oracle.jdbc.driver.OracleDriver");
//第二步:和数据库连接
conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.3:1521:xe", "lwl", "123456");
//第三步,创建执行sql语句的对象
java.sql.Statement st = conn.createStatement(); java.sql.ResultSet rs = null;
byte[] b = new byte[300];
String sql = null;
while (true) {
try {
System.out.println("jwlSql>");
int len = System.in.read(b);
if (len < 5) {
System.err.println("invalid sql");
continue;
}
if (b[len - 2] == 13 && b[len - 1] == 10) {
len = len - 2;
} else {
len = len - 1;
}
sql = new String(b, 0, len);
if (sql.equals("exit") || sql.equals("quit")) {
System.out.println("welcome again!!");
return;
}
//查询
if (sql.startsWith("select")) {
rs = st.executeQuery(sql);
ResultSetMetaData md = rs.getMetaData();
int fld = md.getColumnCount();
for (int i = 1; i <= fld; i++) {
System.out.print(md.getColumnName(i) + "\t");//显示列名字
}
System.out.println();
while (rs.next()) {//显示数据
for (int i = 1; i <= fld; i++) {
System.out.print(rs.getString(i) + "\t\t");
}
System.out.println();
}
} else {
st.executeUpdate(sql);
}
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
}

借助Java的JDBC自制“DBMS”管理操作数据库的更多相关文章

  1. Java数据库连接——JDBC基础知识(操作数据库:增删改查)

    一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

  2. JAVA的JDBC连接与sql操作

    一.前言 本文主要介绍怎样连接数据库.即JDBC的操作.以MySQL为例子. 前提是首先要将驱动jar包放入对应路径中. 二.过程说明 1.加载jdbc驱动程序 <span style=&quo ...

  3. JDBC(用Eclipse操作数据库Oracle)的基础操作集合

    JDBC: JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编 ...

  4. IDEA用Maven连接MySQL的jdbc驱动,并操作数据库

    1.在IDEA里创建Maven项目 1.1.点击Create New Project   1.2.选择Maven,JDK这里用的是1.8,点击Next  1.3.填入“组织名”.“项目名”,版本是默认 ...

  5. IDEA导入MySQL的jdbc驱动,并操作数据库

    将MySQL的jdbc驱动,导入IDEA的方式,虽然也能连接并且操作数据库,但并不推荐这种方式,推荐使用Maven工程的方式:https://www.cnblogs.com/dadian/p/1193 ...

  6. Java类——JDBC链接、并操作MySQL数据库

    Java——MySQL数据库操作类 package pkg.src.database; import java.sql.*; public class MYSQL_DBManager { // //定 ...

  7. Java基础(三十三)JDBC(3)操作数据库

    一.添加数据 在SQL语句中,一条INSERT语句只能添加一条记录,因此分为几种情况进行添加数据操作. 1.添加一条记录 (1)如果只需要添加一条记录,通常情况下通过Statament实例完成. tr ...

  8. java使用jdbc连接oracle(其他数据库类似)

    最基本的Oracle数据库连接代码: 1.右键项目->构建路径->配置构建路径,选择第三项“库”,然后点击“添加外部Jar”,选择“D:\Oracle\app\oracle\product ...

  9. JDBC操作数据库的学习(1)

    单单对数据库的操作,比如说MySQL,我们可以在命令行窗口中执行,但是一般是应用程序要操作数据库,因此我们应该在程序中的代码上体现对数据库的操作,那么使用程序应用如何操作数据库呢?那就要使用到数据库的 ...

随机推荐

  1. MySQL数据的增删改查查查查查查查查查查查查查查查查(查是真的多)

    一 数据的增加 主要是运用insert  into 语句. 格式: insert  into 表名称 values(数据,数据,数据)(要按顺序来,有没有数据的可以加null) 只增加某些字段里数据的 ...

  2. SpringMVC4——视图、视图解析器、国际化

    视图.视图解析器.国际化 视图的顶级接口:View 视图解析器:ViewResolver   常见的视图和解析器: InternalResourceView.InternalResourceViewR ...

  3. Android 禁止ViewPager左右滑动的功能实现

    来来来,各位看官~ Look here!!! Android    禁止ViewPager左右滑动的功能实现!! I think it`s so easy,无需重写ViewPager!!! JUST ...

  4. MIT 6.828 Lab04 : Preemptive Multitasking

    目录 Part A:Multiprocessor Support and Cooperative Multitasking Multiprocessor Support 虚拟内存图 Exercise ...

  5. Docker日常使用方式

    前提 在安装docker之前,建议你设置系统的国内镜像源先哦,很快~嗯,快. 阿里云镜像源:https://developer.aliyun.com/mirror/ 安装 安装docker 下面都是官 ...

  6. java+opencv人脸识别程序2.0

    由于第一次写的太粗糙了,所以又修改了一下,详细的更改如下: @ 目录 更改 窗口问题 识别问题 相似度对比 仍然存在的问题 人脸信息显示 图片质量 更改 优化了一下界面风格 窗口问题 原来是在主界面外 ...

  7. NRF52840 添加 led service

    记录NRF52840 添加LED service的流程,以及遇到的问题. 由于SDK中已经有了led service的.c和.h文件,因此只需要添加文件,并且调用相关函数即可. 注:编译调试环境为ke ...

  8. Robot Framework(3)——RIDE工具详解

    上一篇介绍了用RF来简单运行案例,此篇主要了解一下工具操作 一.菜单栏 1.File 1>New Project:新建工程 2>Open Test Suite:打开测试套件 3>Op ...

  9. Java面试题(Java基础篇)

    Java 基础 1.JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境. JRE:Java Run ...

  10. GeneralUpdate2.1.0发布

    GeneralUpdate GeneralUpdate是基于.net framwork开发的一款(c/s应用)自动升级程序.该组件将更新的核心部分抽离出来方便应用于多种项目当中目前适用于wpf,控制台 ...