我在oracle中具有以下过程:
with open('filename.csv', 'r', encoding="latin-1") as csvfile:
readCSV=csv.reader(csvfile, delimiter=',')
row_count=sum(1 for row in readCSV)
print(row_count)
for row in readCSV:
print(row[1])
此过程没有任何输入或输出参数,我正尝试执行以下过程:
import os
a ="foldername"
os.listdir(a)
我尝试的另一种方法是:
CREATE OR REPLACE PROCEDURE usp_Templates_Load_TruncateRawTables
AS
BEGIN
EXECUTE IMMEDIATE 'TRUNCATE TABLE TBLTEMPLATES_LOAD_OTHEROBJECTS_RAW';
EXECUTE IMMEDIATE 'TRUNCATE TABLE TBLTEMPLATES_LOAD_NOTES_RAW';
EXECUTE IMMEDIATE 'TRUNCATE TABLE TBLTMPLTS_LOAD_INCSTATEMT_RAW';
EXECUTE IMMEDIATE 'TRUNCATE TABLE TBLTMPLTS_LOAD_BALANCESHEET_RAW';
EXECUTE IMMEDIATE 'TRUNCATE TABLE TBLTEMPLATES_LOAD_OTHERBANK_RAW';
END;
但是两次,我都收到错误消息:
ORA-00942:表或视图不存在
ORA-06512:位于“ TC_OWNER.USP_TEMPLATES_LOAD_TRUNCATERAWTABLES”的第8行
ORA-06512:在第1行
如何正确执行此过程以获取正确的输出。
答案 0 :(得分:0)
解决方案1-添加所有者/方案名称
CREATE OR REPLACE PROCEDURE TC_OWNER.usp_Templates_Load_TruncateRawTables
AS
BEGIN
EXECUTE IMMEDIATE 'TRUNCATE TABLE schema2.TBLTEMPLATES_LOAD_OTHEROBJECTS_RAW';
. . . .
END;
方案可以不同,只要执行模式具有执行模式的权限即可。我为视觉效果添加了TC_OWNER.usp_Tem...
解决方案2-以这些表的所有者身份执行
connect schema2/password @sid
执行
BEGIN
EXECUTE IMMEDIATE 'TRUNCATE TABLE TBLTEMPLATES_LOAD_OTHEROBJECTS_RAW';
. . . .
END;