-1

これは簡単なことかもしれません。基本的に Oracle の PL/SQL では、別のデータベースから選択しています。

select * From Store@dbstore.p009061;

私が望むのは、値 061 が変数名 (myStore) から取得されることです。

したがって、次のようになります。

select * from STORE@DBSTORE.P||myStore||'081';

上記の myStore は値 061 を保持することを思い出してください。

しかし、上記は機能しませんか?誰か助けてくれませんか?ありがとう

4

2 に答える 2

1

うーん、クエリでこれを直接行うことはできません。動的 SQL を使用する必要があります。

何かのようなもの

declare
myStore varchar2(10):='061';
begin
EXECUTE IMMEDIATE 'SELECT * FROM STORE@DBSTORE.P'||myStore||'081';
end;
于 2013-01-18T20:52:48.223 に答える
0

それとも、このようにする必要がありますか?

declare
    myStore varchar2(10):='061';
    sStoreCode varchar2(10):='061';
begin
    EXECUTE IMMEDIATE 'SELECT * FROM STORE@BNSTORE.P'||myStore
                                            ||'081 where storecode='||sStoreCode;

end;
于 2013-01-18T21:20:09.947 に答える