是否可以通过外部脚本将值从SQL Developer插入到Oracle SQL表中
INSERT
INTO TABLE_A
(
ID,
VERSION
) VALUES (@select.sql)文件select.sql中的语句如下所示
SELECT ID, VERSION from TABLE_X;发布于 2020-09-09 18:30:53
这在使用'Run as script‘(F5)的SQL Developer 20中不起作用(或者在PL/SQL Developer命令窗口中,就这一点而言)。如果它必须在SQL Developer中工作,那么您就不走运了。
如果清除语法并将调用放在自己的行上,它将在SQL*Plus和SQLcl中工作。
test_insert.sql
insert into table_a
( id
, version )
@@select.sql
/select.sql
select rownum, 1
from xmltable('1 to 10')(请注意,您必须决定哪个脚本包含终止;或/。)
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Sep 9 11:27:40 2020
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Last Successful login time: Wed Sep 09 2020 11:26:30 +01:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> @test_insert
10 rows created.
SQL>
SQL> l
1 insert into table_a
2 ( id
3 , version )
4 select rownum, 1
5* from xmltable('1 to 10')发布于 2020-09-09 14:16:08
照你的说法,我认为这是不可能的。
如果你花点功夫,下面是可能会起作用的:
select.sql文件位于数据库服务器上,位于作为Oracle目录对象源目录中,且read权限,则insert -语句(请注意,您的语句是错误的;不应该使用values关键字columnexecute immediate (所以是的,这是动态的))将SQL)文件用作外部表
我会想这么做吗?我不这么认为,但是-你可能会,现在你知道怎么做了。
https://stackoverflow.com/questions/63805298
复制相似问题