需要用sqlloader來進(jìn)行大量的數(shù)據(jù)導(dǎo)入。
創(chuàng)新互聯(lián)公司主營(yíng)汶上網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都app軟件開發(fā)公司,汶上h5小程序開發(fā)搭建,汶上網(wǎng)站營(yíng)銷推廣歡迎汶上等地區(qū)企業(yè)咨詢
1、首先,在數(shù)據(jù)庫中要?jiǎng)?chuàng)建跟字段對(duì)應(yīng)的表,并設(shè)置字段長(zhǎng)度足夠大。
2、根據(jù)創(chuàng)建的表名,及文本的格式編寫腳本。保存成文件,名字為:load.ctl
load???data???
infile???'result.txt'???--文本文件名
replace?into??table???resultxt????--插入的表名?
(resultid???char???terminated???by???',',???--讀取以逗號(hào)分隔的數(shù)據(jù),下同
website???char???terminated???by???',',???
ipport???char???terminated???by???',',???
status???char???terminated???by???whitespace)
3、ctrl+win鍵,打開命令提示符。
4、執(zhí)行以下語句:
sqlldr?userid=用戶名/密碼@數(shù)據(jù)庫實(shí)例?control=路徑\result.ctl??log=路徑\resulthis.out
5、等待導(dǎo)入完成即可。
同時(shí)查詢2張表數(shù)據(jù)有很多種方法(下面的a,b為表名,A,B為表的別名):
1,select A.*,B.* from a A,b B;
這樣查出來的是a的所有數(shù)據(jù)在前面幾列,b的數(shù)據(jù)在后面幾列。
2,select * from a cross join a
這樣查出來的數(shù)據(jù)是2張表的笛卡爾積。
即a的數(shù)據(jù)量乘以b的數(shù)據(jù)量的積
3,如果兩張表擁有相同的字段,你可以使用left join或者right join
select * from table1 left join table2 on table1.id=table2.id
在表DBCON中維護(hù)(SM30)oracle
db的連接信息,
然後用SE38使用NATIVE
SQL讀取ORACLE
DB的數(shù)據(jù)存放在一個(gè)自定表Z*中,
或直接使用BAPI,
BDC將數(shù)據(jù)寫到FI的相關(guān)文件中去.
使用行轉(zhuǎn)列進(jìn)行轉(zhuǎn)換一下就可以了,腳本如下:
insert?into?othertable?(?zddm,?cjsj,?f1110101,?f1110102,?f1110103?)
select?zddm,
cjsj,
sum(f1110101)?f1110101,
sum(f1110102)?f1110102,
sum(f1110103)?f1110103
from?(select?zddm,
cjsj,
decode(xdm,?'1110101',?xsj,?0)?f1110101,
decode(xdm,?'1110102',?xsj,?0)?f1110102,
decode(xdm,?'1110103',?xsj,?0)?f1110103
from?table_name)?a
group?by?a.zddm,?z.cjsj
--?如果是新建表的時(shí)候
create?table?othertable?as
select?zddm,
cjsj,
sum(f1110101)?f1110101,
sum(f1110102)?f1110102,
sum(f1110103)?f1110103
from?(select?zddm,
cjsj,
decode(xdm,?'1110101',?xsj,?0)?f1110101,
decode(xdm,?'1110102',?xsj,?0)?f1110102,
decode(xdm,?'1110103',?xsj,?0)?f1110103
from?table_name)?a
group?by?a.zddm,?z.cjsj
以上是數(shù)據(jù)項(xiàng)代碼個(gè)數(shù)固定的時(shí)候可以這樣轉(zhuǎn)換,如果數(shù)據(jù)項(xiàng)代碼個(gè)數(shù)不確定的話,就要使用動(dòng)態(tài)SQL了,最好寫個(gè)存儲(chǔ)過程,每天來執(zhí)行
有問題請(qǐng)追問,希望可以幫到你
OracleDBConsoleorcl 這個(gè)是采用瀏覽器使用的oracle企業(yè)管理器
OracleOraDb10g_home1iSQL*Plus 是isql*plus的服務(wù),要使用isqlplus,必須開啟該服務(wù),其它的服務(wù)見下面
如果只用cmd中的sqlplus管理oracle的話,必須的就一個(gè)OracleServiceORCL
要是還要其它的至少兩個(gè):OracleServiceORCL OracleOraDb10g_home1TNSListener
一個(gè)數(shù)據(jù)庫服務(wù)器,一個(gè)監(jiān)聽器(等待客戶端工具來連接數(shù)據(jù)庫的程序)
(1)OracleServiceSID
數(shù)據(jù)庫服務(wù),這個(gè)服務(wù)會(huì)自動(dòng)地啟動(dòng)和停止數(shù)據(jù)庫。如果安裝了一個(gè)數(shù)據(jù)庫,它的缺省啟動(dòng)類型為自動(dòng)。服務(wù)進(jìn)程為ORACLE.EXE,參數(shù)文件initSID.ora,日志文件SIDALRT.log,控制臺(tái)SVRMGRL.EXE、SQLPLUS.EXE。
(2)OracleHOME_NAMETNSListener
監(jiān)聽器服務(wù),服務(wù)只有在數(shù)據(jù)庫需要遠(yuǎn)程訪問時(shí)才需要(無論是通過另外一臺(tái)主機(jī)還是在本地通過 SQL*Net 網(wǎng)絡(luò)協(xié)議都屬于遠(yuǎn)程訪問),不用這個(gè)服務(wù)就可以訪問本地?cái)?shù)據(jù)庫,它的缺省啟動(dòng)類型為自動(dòng)。服務(wù)進(jìn)程為TNSLSNR.EXE,參數(shù)文件 Listener.ora,日志文件listener.log,控制臺(tái)LSNRCTL.EXE,默認(rèn)端口1521、1526。
(3)OracleHOME_NAMEAgent
OEM代理服務(wù),接收和響應(yīng)來自O(shè)EM控制臺(tái)的任務(wù)和事件請(qǐng)求,只有使用OEM管理數(shù)據(jù)庫時(shí)才需要,它的缺省啟動(dòng)類型為自動(dòng)。服務(wù)進(jìn)程為DBSNMP.EXE,參數(shù)文件snmp_rw.ora,日志文件nmi.log,控制臺(tái)LSNRCTL.EXE,默認(rèn)端口1748。
(4)OracleHOME_NAMEClientCache
名字緩存服務(wù),服務(wù)緩存用于連接遠(yuǎn)程數(shù)據(jù)庫的Oracle Names 數(shù)據(jù)。它的缺省啟動(dòng)類型是手動(dòng)。然而,除非有一臺(tái)Oracle Names 服務(wù)器,否則沒有必要運(yùn)行這個(gè)服務(wù)。服務(wù)進(jìn)程為ONRSD.EXE,參數(shù)文件NAMES.ORA,日志文件ONRSD.LOG,控制臺(tái) NAMESCTL.EXE。
(5)OracleHOME_NAMECMAdmin
連接管理服務(wù),是構(gòu)建Connection Manager服務(wù)器所用,只有服務(wù)器作為Connection Manager才需要,它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程為CMADMIN.EXE,參數(shù)文件CMAN.ORA,日志文件CMADM_PID.TRC,控制臺(tái)CMCTL.EXE,默認(rèn)端口1830。
(6)OracleHOME_NAMECMan
連接網(wǎng)關(guān)服務(wù),是構(gòu)建Connection Manager服務(wù)器所用,只有服務(wù)器作為Connection Manager才需要,它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程為CMGW.EXE,參數(shù)文件CMAN.ORA,日志文件CMAN_PID.TRC,控制臺(tái) CMCTL.EXE,默認(rèn)端口1630。
(7)OracleHOME_NAMEDataGatherer
性能包數(shù)據(jù)采集服務(wù),除非使用Oracle Capacity Planner 和 Oracle Performance Manager,否則不需要啟動(dòng),它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程為VPPDC.EXE,日志文件alert_dg.log,控制臺(tái) vppcntl.exe。
(8)OracleHOME_NAMEHTTPServer
Oracle 提供的WEB服務(wù)器,一般情況下我們只用它來訪問Oracle Apache 目錄下的Web 頁面,比如說JSP 或者modplsql 頁面。除非你使用它作為你的HTTP服務(wù),否則不需要啟動(dòng)(若啟動(dòng)它會(huì)接管IIS的服務(wù)),它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程為APACHE.EXE,參數(shù)文件 httpd.conf,默認(rèn)端口80。
(9)OracleHOME_NAMEPagingServer
通過一個(gè)使用調(diào)制解調(diào)器的數(shù)字傳呼機(jī)或者電子郵件發(fā)出警告(沒試過),它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程PAGNTSRV.EXE,日志文件paging.log。
(10)OracleHOME_NAMENames
Oracle Names服務(wù),只有服務(wù)器作為Names Server才需要,它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程N(yùn)AMES.EXE,參數(shù)文件NAMES.ORA,日志文件NAMES.LOG,控制臺(tái)NAMESCTL.EXE,默認(rèn)端口1575。
(11)OracleSNMPPeerMasterAgent
SNMP服務(wù)代理,用于支持SNMP的網(wǎng)管軟件對(duì)服務(wù)器的管理,除非你使用網(wǎng)管工具監(jiān)控?cái)?shù)據(jù)庫的情況,否則不需要啟動(dòng),它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程為AGNTSVC.EXE,參數(shù)文件MASTER.CFG,默認(rèn)端口161。
(12)OracleSNMPPeerEncapsulater
SNMP協(xié)議封裝服務(wù),用于SNMP協(xié)議轉(zhuǎn)換,除非你使用一個(gè)不兼容的SNMP代理服務(wù),否則不需要啟動(dòng),它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程為ENCSVC.EXE,參數(shù)文件ENCAPS.CFG,默認(rèn)端口1161。
(13)OracleHOME_NAMEManagementServer
OEM管理服務(wù),使用OEM時(shí)需要,它的缺省啟動(dòng)類型是手動(dòng)。服務(wù)進(jìn)程為OMSNTSVR.EXE,日志文件oms.nohup。
這是引用zhudaohui的回答,他回復(fù)的很強(qiáng)大。
由于ChinaExcel的組件中使用ODBC、ADO來訪問數(shù)據(jù)庫,所以可以訪問任何數(shù)據(jù)庫。在訪問數(shù)據(jù)庫之前,首先設(shè)置 連接數(shù)據(jù)源,然后調(diào)用報(bào)表設(shè)計(jì)器菜單“數(shù)據(jù)”中的“設(shè)置數(shù)據(jù)源向?qū)А惫δ苓B接數(shù)據(jù)源,數(shù)據(jù)源連接成 功后,就可以使用統(tǒng)計(jì)向?qū)Я?。在ChinaExcel的插件中,數(shù)據(jù)庫的連接,取數(shù)是由程序員自己來完成,所以可以支持任意的取數(shù)方式,當(dāng)然也包括支持任何數(shù)據(jù)庫了。