當前位置:首頁 » 操作系統 » java導入oracle資料庫

java導入oracle資料庫

發布時間: 2022-08-22 00:10:25

A. java中存文件到ORACLE資料庫里怎麼做

參考代碼如下:
public class InsertBlobData {
Connection con = null;

/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
InsertBlobData data = new InsertBlobData();
data.insertBlogInfo("002jpg", "sdsdfdf", "2007-02-12", "002.jpg");
}
public void insertBlogInfo(String jmzh, String xm, String smsj,
String fileName) throws Exception {
// try {
con = ConnectionPoliceFactory.getFactory().getConnection();
// } catch (ClassNotFoundException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
// 處理事務
boolean defaultCommit = con.getAutoCommit();
con.setAutoCommit(false);
Statement st = con.createStatement();
// 插入一個空對象
st.executeUpdate("insert into ksren_txxx(jmzh,xm,smsj,txsj) values('"
+ jmzh + "','" + xm + "',to_date('" + smsj
+ "','yyyy-mm-dd'),empty_blob())");
// 用for update方式鎖定數據行
ResultSet rs = st
.executeQuery("select txsj from ksren_txxx where jmzh='"
+ jmzh + "' and xm='" + xm + "' for update");
if (rs.next()) {
// 得到java.sql.Blob對象,然後Cast為oracle.sql.BLOB
oracle.sql.BLOB blob = (oracle.sql.BLOB) rs.getBlob(1);
// 到資料庫的輸出流
OutputStream outStream = blob.getBinaryOutputStream();
// 這里用一個文件模擬輸入流
InputStream fin = new FileInputStream(new File(fileName));
// 將輸入流寫到輸出流
byte[] b = new byte[blob.getBufferSize()];
int len = 0;
while ((len = fin.read(b)) != -1) {
outStream.write(b, 0, len);
// blob.putBytes(1,b);
}
// 依次關閉(注意順序)

fin.close();
outStream.flush();
outStream.close();
con.commit();
/* 恢復原提交狀態 */
con.setAutoCommit(defaultCommit);
con.close();

}
}
}

B. java如何將dmp文件導入到oracle資料庫中

這個問題要先注意:oracle是不能用語句直接導出的,而常規的導出辦法是用cmd的DOS命令來操作,之前我已經試過了,具體代碼如下:
try {
//獲取備份路徑
SystemSetting ss=App.getSystemSetting("datebase_bak");
String bakpath=ss.getSettingValue();
//判斷路徑是否存在,不存在創建
java.io.File ff=new java.io.File(bakpath);
if(!ff.exists()&&!ff.isDirectory()){
ff.mkdir();
}
//備份操作開始
String baksql="";//備份語句
String dburl=App.getConfigValue("db.url");
String dataBaseName="";//資料庫名稱
//oracle中資料庫名放在最後
String[] newDBurlStrings=dburl.split(":");
dataBaseName=newDBurlStrings[newDBurlStrings.length-1].toUpperCase();
Calendar now = Calendar.getInstance();
//備份文件名稱(資料庫名+年月日)
String baknameString=dataBaseName+now.get(Calendar.YEAR)+now.get(Calendar.MONTH)+now.get(Calendar.DAY_OF_MONTH)+".dmp";
//如果已存在當天的備份先刪除之前的備份
java.io.File bakfile=new java.io.File(bakpath+baknameString);
if(bakfile.exists()){
bakfile.delete();
}
String username=App.getConfigValue("db.username");
String password=App.getConfigValue("db.password");
baksql="exp "+username+"/"+password+"@"+dataBaseName+" file="+bakpath+baknameString+" full=y";
//oracle無法用sql語句進行備份只能通過cmd命令備份
Runtime rt = Runtime.getRuntime();
Process p = rt.exec(baksql);
//p.destroy();
} catch (Exception e) {
logger.debug("資料庫備份出現異常:"+e.getMessage());
return NONE;
}
大致是這樣,其他的你修改下就可以了

C. 怎麼用java連接oracle資料庫,需要詳細解釋

1)首先你要有java連接oracle資料庫的驅動類,下載好後導入到工程里

2)代碼:
import java.sql.*;

public class JDBCTest {

/**
* @param args
* @throws ClassNotFoundException
*/
public static void main(String[] args)
throws ClassNotFoundException, SQLException{
//1.准備參數
String ip = "192.168.0.26";
String sid = "tarena";
String port = "1521";
String dbUser = "openlab";
String dbPassword = "open123";
String driver
= "oracle.jdbc.driver.OracleDriver";

//2.構造驅動實例
Class.forName(driver);

//3.創建連接
//連接字元串是固定的形式,oracle的形式:
String url
= "jdbc:oracle:thin:@"
+ ip + ":" + port + ":" + sid;
Connection conn
= DriverManager.getConnection
(url, dbUser, dbPassword);
//4.執行SQL語句
String sql = "select id, password, name from user_sd1104 " +
"where id = 1001 and password = '1234'";
Statement stmt = conn.createStatement();
ResultSet rs
= stmt.executeQuery(sql);//執行sql語句
while(rs.next()){
int id = rs.getInt(1);
String pwd = rs.getString(2);
String name = rs.getString(3);
System.out.println("welcome," + name);
}
rs.close();
stmt.close();
conn.close();
}

}

D. 怎樣實現java導入導出oracle資料庫

oracle 資料庫導入導出(用dmp的方法)

cmd

1 將資料庫SampleDB完全導出,用戶名system 密碼manager 導出到E:\SampleDB.dmp中
exp file=E:\sampleDB.dmp full=y

2將備份資料庫文件中的數據導入指定的資料庫SampleDB 中,如果 SampleDB 已存在該表,則不再導入;
imp file=D:\SampleDB.dmp full=y ignore=y

如果沒有DBA許可權,用以下命令授予DBA許可權
sqlplus / as sysdba;
conn system/manager
sql>grant dba to SampleDB

E. java怎麼連接oracle資料庫

第一種方法JDBC鏈接:
public static Connection getConnection() {
Connection connection = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String user = "xxxxx";
String password = "xxxxxx";
connection = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
e.printStackTrace();

}
return connection;
}

第二種Spring中Bean配置:
<!-- 配置oracle數據源 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" >
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
<property name="url"
value ="jdbc:oracle:thin:@localhost:1521:orcl" />
<property name="username" value="xxxxxx" />
<property name="password" value="xxxxxxxxx" />
</bean>

F. java 怎麼從excel文件導入到oracle資料庫中

java操作excel一般都使用poi來完成:

1、下載poi相關jar,maven的集成如下:(把${poi.version}替換成你要的版本)

<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>${poi.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>${poi.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml-schemas</artifactId>
<version>${poi.version}</version>
<scope>provided</scope>
</dependency>

2、根據poi相關api讀取sheet、row、cell,獲得excel的數據:

封裝row的對象,即每一行數據為一個對象,每個cell為對象里的一個屬性,

整個sheet的數據裝進集合里;

3、處理數據,可以對數據進行驗證或其他操作;

4、寫資料庫操作。

熱點內容
吃雞低配置手機如何開極致畫質 發布:2025-05-16 18:15:20 瀏覽:191
空密碼訪問 發布:2025-05-16 18:08:51 瀏覽:892
騰訊雲伺服器安全規則設置 發布:2025-05-16 17:51:33 瀏覽:650
k3伺服器不可用怎麼辦 發布:2025-05-16 17:51:30 瀏覽:537
編輯html源碼 發布:2025-05-16 17:45:45 瀏覽:65
邊的存儲方法 發布:2025-05-16 17:33:16 瀏覽:927
海量伺服器怎麼拆 發布:2025-05-16 17:31:07 瀏覽:211
運行與編譯的區別 發布:2025-05-16 17:25:02 瀏覽:824
c語言for中continue 發布:2025-05-16 17:20:14 瀏覽:648
ftp儲存 發布:2025-05-16 17:04:08 瀏覽:505