Articles of plsql

PLSQL JDBC: Como obter o ID da última linha?

O que é equivalente a PLSQL (Oracle) deste snippet de servidor SQL? BEGIN TRAN INSERT INTO mytable(content) VALUES (“test”) — assume there’s an ID column that is autoincrement SELECT @@IDENTITY COMMIT TRAN Em C #, você pode chamar myCommand.ExecuteScalar () para recuperar o ID da nova linha. Como posso inserir uma nova linha no Oracle, […]

Procedimento UTL_FILE.FOPEN () não aceita caminho para o diretório?

Eu estou tentando escrever em um arquivo armazenado em c: \ unidade chamada vin1.txt e recebendo esse erro .Por favor, sugira! > ERROR at line 1: ORA-29280: invalid > directory path ORA-06512: at > “SYS.UTL_FILE”, line 18 ORA-06512: at > “SYS.UTL_FILE”, line 424 ORA-06512: at > “SCOTT.SAL_STATUS”, line 12 ORA-06512: > at line 1 AQUI […]

Por que não posso usar variables ​​de binding em instruções DDL / SCL em SQL dynamic?

Eu estou tentando executar um comando SQL dentro de SQL dynamic com variables ​​de binding: — this procedure is a part of PL/SQL package Test_Pkg PROCEDURE Set_Nls_Calendar(calendar_ IN VARCHAR2) IS BEGIN EXECUTE IMMEDIATE ‘ALTER SESSION SET NLS_CALENDAR = :cal’ USING IN calendar_; END Set_Nls_Calendar; Então, no lado do cliente, estou tentando invocar o procedimento: Test_Pkg.Set_Nls_Calendar(‘Thai […]

PL / SQL, como escaping de aspas simples em uma string?

No Oracle PL / SQL, como escaping de aspas simples em uma string? Eu tentei desse jeito, não funciona. declare stmt varchar2(2000); begin for i in 1021 .. 6020 loop stmt := ‘insert into MY_TBL (Col) values(\’ER0002\’)’; dbms_output.put_line(stmt); execute immediate stmt; commit; end loop; exception when others then rollback; dbms_output.put_line(sqlerrm); end; /

Imprimindo o valor de uma variável no SQL Developer

Eu queria imprimir o valor de uma variável específica que está dentro de um bloco anônimo. Eu estou usando o Oracle SQL Developer. Eu tentei usar dbms_output.put_line . Mas isto não está funcionando. O código que estou usando é mostrado abaixo. SET SERVEROUTPUT ON DECLARE CTABLE USER_OBJECTS.OBJECT_NAME%TYPE; CCOLUMN ALL_TAB_COLS.COLUMN_NAME%TYPE; V_ALL_COLS VARCHAR2(500); CURSOR CURSOR_TABLE IS SELECT […]

como converter csv para tabela no oracle

Como posso fazer um pacote que retorna resultados em formato de tabela quando passado em valores csv. select * from table(schema.mypackage.myfunction(‘one, two, three’)) deve retornar one two three Eu tentei algo de pedir tom mas isso só funciona com tipos de sql. Eu estou usando o oracle 11g. Existe algo embutido?

O que é o operador de concatenação de string no Oracle?

O que é o operador de concatenação de string no Oracle SQL? Existem algumas características “interessantes” que eu deveria ter cuidado? (Isso parece óbvio, mas não consegui encontrar uma pergunta anterior).

Você pode SELECT tudo, mas 1 ou 2 campos, sem cãibra do escritor?

É possível, em PLSQL, selecionar todos os campos em uma tabela, exceto 1 ou 2, sem precisar especificar os campos desejados? Exemplo, a tabela de empregados possui os campos: identidade primeiro nome último nome hobbies Ainda é possível escrever uma consulta semelhante a select * from employee deixando os hobbies campo sem ter que escrever […]

Existe uma function para dividir uma string em PL / SQL?

Eu preciso escrever um procedimento para normalizar um registro que tenha vários tokens concatenados por um caractere. Eu preciso obter esses tokens dividindo a string e inserir cada um como um novo registro em uma tabela. O Oracle tem algo parecido com uma function “split“?

Obter contagens de todas as tabelas em um esquema

Eu estou tentando obter as contagens de registro de todas as tabelas em um esquema. Estou tendo problemas para escrever o PL / SQL. Aqui está o que eu fiz até agora, mas estou recebendo erros. Por favor sugira qualquer alteração: DECLARE v_owner varchar2(40); v_table_name varchar2(40); cursor get_tables is select distinct table_name,user from user_tables where […]