亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Oracle與Access表之間的導入和導出

瀏覽:99日期:2023-11-22 14:14:36
本文主要回答了如何在FORM的程序中實現Oracle與Access表之間的導入和導出這個問題。 問題的解答: 預備工作: 1.安裝OCA。運行Developer的安裝盤,選擇自定義安裝,選擇Oracle Open Client Adapter for ODBC安裝。 2.在數據源(ODBC)中添加DSN。控制面板->治理工具->數據源(ODBC),選擇“用戶DSN”,添加要進行操作的Access的文件。在“高級”選項里,填上“登錄名稱”和“密碼”(很重要,在程序中會用到)。 下面以實際例子來說明: 假設在Oracle中和Access中都有一個student表,表中字段相同(name char(10) ,age number(2)),在預備工作第2步中的“數據源名”為test,“登錄名稱”和“密碼”都為user。 下面為從Oracle導出到Access的PROCEDURE: PROCEDUREoracle_to_accessISconnection_idEXEC_SQL.ConnType;action_cursorEXEC_SQL.CursType;ignorePLS_INTEGER;t_namestudent.name%type;t_agestudent.age%type;cursortemp_cursorisselect*fromstudent;BEGINconnection_id:=EXEC_SQL.OPEN_CONNECTION('user/user@odbc:test');action_cursor:=EXEC_SQL.OPEN_CURSOR(connection_id);EXEC_SQL.PARSE(connection_id,action_cursor,'delete*fromstudent');ignore:=EXEC_SQL.EXECUTE(connection_id,action_cursor);EXEC_SQL.CLOSE_CURSOR(connection_id,action_cursor);opentemp_cursor;eXPort_count:=0;action_cursor:=EXEC_SQL.OPEN_CURSOR(connection_id);EXEC_SQL.PARSE(connection_id,action_cursor,'INSERTINTOstudent(name,age)values(:1,:2)');loopfetchtemp_cursorintot_name,t_age;exitwhentemp_cursor%notfound;EXEC_SQL.BIND_VARIABLE(connection_id,action_cursor,':1',t_name);EXEC_SQL.BIND_VARIABLE(connection_id,action_cursor,':2',t_age);ignore:=EXEC_SQL.EXECUTE(connection_id,action_cursor);endloop;closetemp_cursor;EXEC_SQL.PARSE(connection_id,action_cursor,'commit');ignore:=EXEC_SQL.EXECUTE(connection_id,action_cursor);EXEC_SQL.CLOSE_CURSOR(connection_id,action_cursor);EXEC_SQL.CLOSE_CONNECTION(connection_id);EXCEPTIONWHENEXEC_SQL.PACKAGE_ERRORTHENIFEXEC_SQL.LAST_ERROR_CODE(connection_id)!=0THENmessage('數據導出至ACCESS失敗:'TO_CHAR(EXEC_SQL.LAST_ERROR_CODE(connection_id))':'EXEC_SQL.LAST_ERROR_MESG(connection_id));ENDIF;IFEXEC_SQL.IS_CONNECTED(connection_id)THENIFEXEC_SQL.IS_OPEN(connection_id,action_cursor)THENEXEC_SQL.CLOSE_CURSOR(connection_id,action_cursor);ENDIF;EXEC_SQL.CLOSE_CONNECTION(connection_id);ENDIF;END;下面為從Access導出到Oracles的procedure:PROCEDUREAccess_to_oracleISconnection_idEXEC_SQL.ConnType;action_cursorEXEC_SQL.CursType;ignorePLS_INTEGER;t_namestudent.name%type;t_agestudent.age%type;BEGINconnection_id:=EXEC_SQL.OPEN_CONNECTION('user/user@odbc:test');action_cursor:=EXEC_SQL.OPEN_CURSOR(connection_id);deletefromstudent;EXEC_SQL.PARSE(connection_id,action_cursor,'selectname,agefromstudent');ignore:=EXEC_SQL.EXECUTE(connection_id,action_cursor);exec_sql.define_column(connection_id,action_cursor,1,t_name,10);exec_sql.define_column(connection_id,action_cursor,2,t_age);ignore:=EXEC_SQL.EXECUTE(connection_id,action_cursor);while(exec_sql.fetch_rows(connection_id,action_cursor)>0)loopexec_sql.column_value(connection_id,action_cursor,1,t_name);exec_sql.column_value(connection_id,action_cursor,2,t_age);insertintotest(name,age)values(t_name,t_age);endloop;commit;EXEC_SQL.CLOSE_CURSOR(connection_id,action_cursor);EXEC_SQL.CLOSE_CONNECTION(connection_id);EXCEPTIONWHENEXEC_SQL.PACKAGE_ERRORTHENIFEXEC_SQL.LAST_ERROR_CODE(connection_id)!=0THENmessage('數據導入至ORACLE失敗:'TO_CHAR(EXEC_SQL.LAST_ERROR_CODE(connection_id))':'EXEC_SQL.LAST_ERROR_MESG(connection_id));ENDIF;IFEXEC_SQL.IS_CONNECTED(connection_id)THENIFEXEC_SQL.IS_OPEN(connection_id,action_cursor)THENEXEC_SQL.CLOSE_CURSOR(connection_id,action_cursor);ENDIF;EXEC_SQL.CLOSE_CONNECTION(connection_id);ENDIF;END;注重:EXEC_SQL.BIND_VARIABLE中綁定的變量只能是以下三種類型:NUMBER,DATE,VARCHAR2。對于Access中的“是/否”的布爾型變量,可以用NUMBER類型的1和0來表示。假如Access中的表名或者字段名中有空格,在寫SQL語句的時候可以用雙引號把表名或者字段名包括起來,如:本例中假如Access中表名為student detail,字段名分別為student name和student age,那插入數據的SQL語句為: insert into “student detail”(“student name”,”student age”) values(:1,:2)。
標簽: Oracle 數據庫
主站蜘蛛池模板: 亚洲视频在线精品 | 999这里只有精品 | 午夜久久免影院欧洲 | 99久久99久久精品免费看蜜桃 | 久久久久18| 看一级毛片国产一级毛片 | 色妇色综合久久夜夜 | 99在线精品免费视频 | 国产成人久久精品二区三区 | 国产高清不卡码一区二区三区 | 在线看黄免费 | 131美女爱做免费高清视频 | 人妖另类亚洲xxxx | 韩日在线播放 | 啪啪自拍视频 | 久久久久久国产a免费观看黄色大片 | 午夜视频在线观看一区 | 韩国黄色一级视频 | 精品一区二区三区视频 | 久久久久久网站 | 一级片在线 | 成人淫片免费视频95视频 | 久久中文字幕网站篠田优 | 免费看a级片| 国产综合福利 | 亚洲国产精品乱码在线观看97 | 亚洲国产经典 | 欧美日韩一区二区三区毛片 | 亚洲精品不卡视频 | 久久草在线视频 | 国产精品视频二区不卡 | 性欧美孕妇孕交tv | 中文字幕日韩高清 | 91在线 | porny | 欧美 | 九九精品免视看国产成人 | 久久久久久免费观看 | 午夜黄页网站在线播放 | 午夜激情在线观看 | 国产成人v爽在线免播放观看 | 黄色毛片一级 | 亚洲精品专区一区二区三区 |