我想使用 shell 脚本将记录插入到 Oracle 表中。
我怎样才能做到这一点?
您可以为此使用SQL*Plus:
sqlplus user/password@database <<EOF
INSERT INTO EMPLOYEE...
EOF
您有多种方法可以从 unix 命令提示符在 oracle 数据库中插入数据。
1)从命令提示符
[oracle@OLE1]$ echo "insert into EMP values (7001,'TESTUSER','CLERK',7902,sysdate,2500,800,10);"|sqlplus -s scott/tiger;
auto COMMIT upon EXIT.
2) 从 shell 脚本
vi insert_stm.sh
echo "Insert Data into EMP table of scott."
sqlplus -s /nolog<<-EOF
conn scott/tiger;
set heading on feedback on;
insert into EMP values (7001,'TESTUSER','CLERK',7902,sysdate,2500,800,10);
commit;
EOF
echo "Insert Done."
:wq
[oracle@OLE1 Desktop]$ sh insert_stm.sh
Insert Data into EMP table of scott.
1 row created.
Commit complete.
Insert done.
[oracle@OLE1 Desktop]$
注意:如果您使用远程数据库,请使用“@”符号,如:
sqlplus -s scott/tiger@stringname;
conn scott/tiger@stringname;