sql >> Databáze >  >> RDS >> Oracle

Dotazování databáze Oracle s názvy dynamických tabulek

Nemyslím si, že můžete napsat jednoduchý SQL dotaz s dynamickými názvy tabulek.

Můžete napsat proceduru PL/SQL, která používá execute immediate a vrátí kurzor nebo něco takového; zrovna včera se na to někdo ptal . Pokud se právě pokoušíte napsat tento dotaz, abyste mohli pracovat s nějakými daty, může to být nejlepší řešení.

Navíc to můžete upravit tak, že svou proceduru PL/SQL převedete na řetězenou funkci a pak jej můžete volat z dotazu SQL pomocí TABLE() .

Kdybych to byl já, zvážil bych vytvoření synonyma (nebo standardního zobrazení, které pouze vybírá z dynamicky pojmenovaných tabulek) a naplánování úlohy, která by ji znovu vytvořila pokaždé, když jsou vytvořeny nové tabulky. To by mohlo být jednodušší než zabývat se zřetězenými funkcemi.




  1. psycopg2.OperationalError:FATAL:nepodporovaný frontend protokol 1234.5679:server podporuje 2.0 až 3.0

  2. python-mysqldb bez transakcí

  3. PL/SQL na klientovi SquirreL SQL 3.7.1

  4. Použijte FILE_IDEX() k vrácení ID databázového souboru na serveru SQL Server