婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 使用IDEA對Oracle數(shù)據(jù)庫進行簡單增刪改查操作

使用IDEA對Oracle數(shù)據(jù)庫進行簡單增刪改查操作

熱門標(biāo)簽:地圖標(biāo)注坐標(biāo)圖標(biāo) 電銷套路機器人 汽車4s店百度地圖標(biāo)注店 鶴壁電話機器人價格 杭州網(wǎng)絡(luò)外呼系統(tǒng)運營商 網(wǎng)貸外呼系統(tǒng)合法嗎 手機地圖標(biāo)注門店 地圖標(biāo)注效果的制作 安陽企業(yè)電銷機器人供應(yīng)商

1.1 Java中的數(shù)據(jù)存儲技術(shù)

在Java中,數(shù)據(jù)庫存取技術(shù)可分為如下幾類:
1、JDBC直接訪問數(shù)據(jù)庫
2、JDO(Java Data Object)是Java對象持久化的新的規(guī)范,也是一個用于存取某種數(shù)據(jù)倉庫中的對象的標(biāo)準(zhǔn)化API。
3、第三方O/R 比如Hibernate,Mybatis等

JDBC是java訪問數(shù)據(jù)庫的基石,JDO、Hibernate、MyBatis,JDO,Hibernate、MyBatyis等只是更好的封裝的JDBC。
最近用idea連接Oracle數(shù)據(jù)庫 并且實現(xiàn)增刪改操作的時候,遇到的一些問題在這里跟大家分享一下。
首先,idea連接連接數(shù)據(jù)庫,都需要進行Connnection,也就是需要jdbc(Java database connection)
在進行連接之前,最先要做的事情就是導(dǎo)入對應(yīng)所使用的數(shù)據(jù)庫的jar包。(常見的數(shù)據(jù)庫有MySQL,Oracle,SQLServer等等)
舉個例子:
我要連接Oracle數(shù)據(jù)庫,就到Oracle的官網(wǎng)上下載對應(yīng)的jar包,當(dāng)引入jar包下面出現(xiàn)小三角的時候,就說明導(dǎo)包成功!!

第一步成功,我們套用jdbc的代碼,基本上這個大家都能明白,咱也可以把它封裝在一個類里邊,必要的時候拿過來使用。
如下代碼所示: 注意看代碼的注釋!!

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner;
//與數(shù)據(jù)庫建立連接
public class ConnectionTest {
  //獲取連接的三個基本信息
  private String dbURL = "jdbc:oracle:thin:@localhost:1521:orcl";
  private String dbUser = "test";
  private String dbPwd = "test";
  // 獲取數(shù)據(jù)庫連接方法, 返回Connection對象
  private Connection con = null;
  //創(chuàng)建數(shù)據(jù)庫連接
  public Connection getDBConnect() {
    try {
      // 加載數(shù)據(jù)庫驅(qū)動 不同的數(shù)據(jù)庫下面這個驅(qū)動是不同的,這個千萬要注意!!!
      Class.forName("oracle.jdbc.driver.OracleDriver");
      con = DriverManager.getConnection(dbURL, dbUser, dbPwd);
    } catch (Exception e) {
      System.out.println(e);
    }
    return con;
  }
}

然后我們寫一個主方法測試一下:也就是程序執(zhí)行的出口,運行至下面這句話說明連接成功! 連接數(shù)據(jù)庫成功僅僅是第二步,接下來更重要的是進行對數(shù)據(jù)庫的增刪改操作!!

連接數(shù)據(jù)庫成功之后,就是為了下面增刪改操作服務(wù)的。注意看對數(shù)據(jù)庫進行插入操作的方法如下:(插入操作的方法要寫在Connection這個類里邊)

public void testInsert() {
	  PreparedStatement ps1 = null; //使用該類執(zhí)行增刪改操作不會發(fā)生sql注入現(xiàn)象!!
    //在進行插入操作的時候 保證你的表、以及對應(yīng)的列名都存在 ?在這里表示占位符
    String sql = "insert into t_user(ID,USERNAME,PASSWORD1,EMAIL) values(?,?,?,?)";
    try {
     //1、預(yù)編譯sql語句 返回PreparedStatement的實例給ps1 con表示Connection的對象
      ps1 = con.prepareStatement(sql);
      //2、填充占位符=?
      ps1.setString(1, "2");
      ps1.setString(2, "ww");
      ps1.setString(3, "12345");
      ps1.setString(4, "907372669@qq.com");
      //執(zhí)行操作
      ps1.execute();
    } catch (SQLException e) {
      e.printStackTrace();
    }
    //資源的關(guān)閉
    try {
      if (ps1 != null)
        ps1.close();
    } catch (SQLException e) {
      e.printStackTrace();
    }
    try {
      if (con != null)
        con.close();
    } catch (SQLException e) {
      e.printStackTrace();
    }
  }

插入方法寫好之后,在主函數(shù)里面調(diào)用即可實現(xiàn)插入操作,千萬注意自己寫的sql語句寫的有沒有存在問題。

同樣往下是刪除操作的方法(ps:注意觀察關(guān)閉資源的方法,將其寫在一個方法體里,減少代碼的重用性!!)

public void testUpdate() {
    PreparedStatement ps2 = null;
    //編寫sql語句 返回PreparedStatement的實例
    String sql = "update T_USER set USERNAME = ? where ID = ? ";
    try {
      ps2 = con.prepareStatement(sql);
       //填充占位符=?
      ps2.setObject(1,"newgg");
      ps2.setObject(2,"1");
      //執(zhí)行
      ps2.execute();
    } catch (SQLException e) {
      e.printStackTrace();
    }
    //實現(xiàn)資源關(guān)閉的方法
    closeSources(ps2,con);
  }
  
  //實現(xiàn)資源關(guān)閉的方法如下:
public void closeSources(PreparedStatement ps, Connection con) {
    try {
      if (ps != null)
        ps.close();
    } catch (SQLException e) {
      e.printStackTrace();
    }
    try {
      if (con != null)
        con.close();
    } catch (SQLException e) {
      e.printStackTrace();
    }
}

接下來實現(xiàn)修改某一行的屬性的方法,邏輯實現(xiàn)同插入刪除一樣。

public void testUpdate() {
 //編寫sql語句 返回PreparedStatement的實例
    PreparedStatement ps2 = null;
    String sql = "update T_USER set USERNAME = ? where ID = ? ";
    try {
      ps2 = con.prepareStatement(sql);
      //填充占位符=?
      ps2.setObject(1,"newgg");
      ps2.setObject(2,"1");
      //執(zhí)行
      ps2.execute();
    } catch (SQLException e) {
      e.printStackTrace();
    }
    //實現(xiàn)資源的關(guān)閉
    closeSources(ps2,con);
  }

套路都是一樣,細(xì)心的人會發(fā)現(xiàn),增刪改的操作步驟都是一樣的,但唯獨SQL語句不一樣,進而填充占位符的參數(shù)是不一樣的,利用Java 具有可變長參數(shù)的性質(zhì),我們可以寫出一個通用的增刪改的方法

 //實現(xiàn)增刪改的通用操作
// sql占位符中的個數(shù)與可變長參數(shù)的長度一致!!
  public void insert_Delete_Update(String sql, Object ...args) {
   //預(yù)編譯SQL語句,返回PreparedStatement的實例
    PreparedStatement ps4 = null;
    try {
      ps4 = con.prepareStatement(sql);
      //填充占位符
      for(int i=0; iargs.length; i++) {
        ps4.setObject(i+1,args[i]);
      }
      //執(zhí)行
      ps4.execute();
    } catch (SQLException e) {
      e.printStackTrace();
    }
    //實現(xiàn)資源的關(guān)閉
    closeSources(ps4,con);
  }

于是進而實現(xiàn)代碼塊分離,SQL語句寫在另一個方法里,代碼實現(xiàn)如下:

 public void test_Insert_Delete_Update() {
 
    String sql1 = "update T_USER set username = ? where ID = ? ";
    //仔細(xì)觀察這個調(diào)用的方法 username=“newQ” ID=“2”這兩個參數(shù)傳入這個方法里 
    insert_Delete_Update(sql1,"newQ","2");
  }

在主函數(shù)調(diào)用該方法,即可實現(xiàn)對表的增刪改操作!

到此這篇關(guān)于使用IDEA對Oracle數(shù)據(jù)庫進行簡單增刪改查操作的文章就介紹到這了,更多相關(guān)IDEA對Oracle數(shù)據(jù)庫增刪改查內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • zabbix agent2 監(jiān)控oracle數(shù)據(jù)庫的方法
  • Python查詢oracle數(shù)據(jù)庫速度慢的解決方案
  • ORACLE數(shù)據(jù)庫對long類型字段進行模糊匹配的解決思路
  • 配置python連接oracle讀取excel數(shù)據(jù)寫入數(shù)據(jù)庫的操作流程
  • SpringBoot多數(shù)據(jù)庫連接(mysql+oracle)的實現(xiàn)
  • 使用zabbix監(jiān)控oracle數(shù)據(jù)庫的方法詳解
  • Oracle數(shù)據(jù)庫下載與安裝的完整步驟
  • QT連接Oracle數(shù)據(jù)庫并實現(xiàn)登錄驗證的操作步驟
  • oracle取數(shù)據(jù)庫中最新的一條數(shù)據(jù)可能會遇到的bug(兩種情況)
  • Oracle數(shù)據(jù)庫scott用戶創(chuàng)建view視圖權(quán)限的操作方法
  • ORACLE數(shù)據(jù)庫應(yīng)用開發(fā)的三十個注意事項

標(biāo)簽:河源 焦作 柳州 泰安 南陽 梧州 酒泉 銀川

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用IDEA對Oracle數(shù)據(jù)庫進行簡單增刪改查操作》,本文關(guān)鍵詞  使用,IDEA,對,Oracle,數(shù)據(jù)庫,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用IDEA對Oracle數(shù)據(jù)庫進行簡單增刪改查操作》相關(guān)的同類信息!
  • 本頁收集關(guān)于使用IDEA對Oracle數(shù)據(jù)庫進行簡單增刪改查操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 运城市| 松原市| 微山县| 阿瓦提县| 蛟河市| 肥城市| 毕节市| 观塘区| 运城市| 洪湖市| 长丰县| 永吉县| 天气| 东乡族自治县| 临汾市| 聂荣县| 衡水市| 绥滨县| 紫云| 鄂尔多斯市| 云安县| 梨树县| 沐川县| 天台县| 黔东| 绥棱县| 巩留县| 苍南县| 山丹县| 罗定市| 盘锦市| 金沙县| 济宁市| 馆陶县| 抚松县| 佳木斯市| 军事| 武胜县| 荣昌县| 南京市| 宜春市|