Search the Community
Showing results for tags 'oracle'.
-
Caros, criei um endPoint que recebe no postman credittypeVAR = HIP,JUR (que seria uma lista). Isto chega no controler certinho dentro de List(String) credittypeVAR. Sendo que quando eu uso na chamada ao repositorio “AND (:credittypeVAR IS NULL OR :credittypeVAR = ‘’” OR credittype IN (:credittypeVAR))" este valor não é consultado. Eu tenho uma erro oracle.jdbc.OracleDatabaseException: ORA-00920: operador relacional inválido o que pode ser? Se eu fizer "Matelado" assim "AND (:credittypeVAR IS NULL OR :credittypeVAR = ‘’” OR credittype IN ('HIP','JUR'))" Funciona. estou a usar o Oracle.
-
Boa noite, Já alguém teve problemas a ligar via oledb a uma bd Oracle num Asp.net core ? Não tenho qualquer problema em ligar ao sql server via oledb com o Asp.net core mas quando tento ligar ao oracle dá-me sempre que o OraOLEDB.Oracle não está registado na máquina. No entanto, numa aplicação Asp.net .net framework 4.6 não tenho qualquer problema em aceder ao Oracle. Como estão a usar o oledb para oracle em .net core? Desde já obrigado.
-
Boas. Tenho uma base de dados em oracle e queria saber se é possivel utilizar o Oracle PL/SQL para consultar e tratar esses dados e em seguida com recurso ao visual studio exibir os dados tratados. Obrigado, Abraço. Afonso Mira.
- 1 reply
-
- oracle
- visual studio
-
(and 1 more)
Tagged with:
-
Boas malta, Tenho uma conexão a uma BD ORACLE. Quando executo o meu código desenvolvido em asp.net c# diretamente do visual studio tudo OK. Quando faço a hospedagem da página web para o IIS do servidor dá o erro: System.Data.OracleClient requires Oracle client software version 8.1.7 or greater. O oracle client está instalado no servidor e mesmo assim não funciona. Alguém consegue ajudar neste problema?
-
Boa noite, estou a desenvolver uma base de dados para suporte de uma loja e-commerce, alguém me poderia dar uma ajuda com os triggers, Tenho uma tabela cliente que possui os seguintes campos: id_cliente, genero, primeiro_nome,ultimo_nome,data_nasc... O que eu pretendia era fazer um trigger que só permiti-se que o cliente, pode-se fazer compras se fosse maior de idade ou seja + 18 anos, gostaria de validar isto com o campo data_nasc, que compara a data atual com a data que o cliente introduz, como fazer através de um trigger PL/SQL no sql developer... Desde já agradeço ajuda! Melhores Cumps!
-
Boa noite, Gostaria de saber se é possível utilizar o Sqlite no Oracle SQL Developer, queria utilizar o Oracle SQL Developer como "frontend" mas "por trás" ter o Sqlite. Caso afirmativo gostava que me indicassem como o fazer. Queria criar uma Connection e ligar ao Sqlite como se faz quando se configura a base de dados da Oracle mas não consegui encontrar nada que me indicasse como fazê-lo.
-
Olá boa tarde, Criei uma Tabela que vai ter obrigatoriamente, entre outros, dois campos, um Latitude e outro Longitude. Alguém pode, por favor, indicar-me como definir (em termos de tipo de dados) esses dois campos? Obrigado. Blackie
-
Senhores, boa tarde. Estou pensando em sair do Brasil e tentar a vida em Portugal. Achariam que vale a pena pra um programador VB6 vale a pena o risco?? Obrigado a quem puder ajudar...
-
Olá Pessoal!!! Preciso de ajuda para transformar uma generalização no modelo relacional e consequentimente a implementação em sql: Ex. Supondo que gestor e atendente são generalização de Funcionario Funcionario (cod_fun, tipo, nome) gestor(cod_func) atendente(cod_func) Será que está correcto, como saberei se um determinado funcionario é gestor. será que o tipo tem uma restrição especial. Por favor ajudam-me
-
Queria queria uma função e um procedimento para a BD que é para simular um jogo. Tenho duas tabelas(Jogadores(ID_JOGADOR,PONTOS,NOME), Aldeias(ID_ALDEIA,NOME,PONTOS,JOGADOR_ID_JOGADOR)), onde cada jogador pode ter 1 ou mais aldeias. A função é para somar os pontos da(s) aldeia(s) de cada jogador e return o valor da somas dos pontos. O procedimento era para fazer um update na tabela jogador para alterar o numero de pontos total da aldeia ou das aldeia. Função CREATE OR REPLACE FUNCTION conta_pontos_aldeias( p_aldeia NUMBER) RETURN NUMBER IS v_pontos NUMBER(9); BEGIN SELECT SUM(aldeia.pontos) INTO v_pontos FROM ALDEIA GROUP BY JOGADOR_ID_JOGADOR; RETURN(v_pontos); END; / Procedimento create or replace PROCEDURE conta_total_pontos( p_aldeia NUMBER) IS v_pontos NUMBER(9); BEGIN UPDATE jogador set pontos = v_pontos; v_pontos :=conta_pontos_aldeias(p_aldeia); DBMS_OUTPUT.PUT_LINE(' Existem '||v_pontos||' pontos em '||p_aldeia|| ' aldeia'); END; Ambos compilam, mas quando chamo o procedimento dá erro. begin CONTA_TOTAL_PONTOS(2); end; / ERRO:
-
Boa tarde , ando com um problema relativamente a uma chave estrangeira que pertence a multiplas tabelas . Fiz o seguinte codigo: create table movimentos( valor_deposito NUMBER(10,3) NOT NULL, data_deposito DATE , valor_levantamento NUMBER(10,3) NOT NULL, data_levantamento DATE NOT NULL, total_movimento NUMBER(10,3) NOT NULL, saldofinal_conta NUMBER(10,3) NOT NULL, produto_id NUMBER(4) NOT NULL, CONSTRAINT movimentos_fk1 FOREIGN KEY (produto_id) REFERENCES conta_ordem (produto_id), CONSTRAINT movimentos_fk2 FOREIGN KEY (produto_id) REFERENCES conta_jovem (produto_id), CONSTRAINT movimentos_fk3 FOREIGN KEY (produto_id) REFERENCES conta_multibanco (produto_id), CONSTRAINT movimentos_fk4 FOREIGN KEY (produto_id) REFERENCES conta_rendimentohabitacao (produto_id), CONSTRAINT movimentos_fk5 FOREIGN KEY (produto_id) REFERENCES conta_rendimento(produto_id) ); Eu consigo criar a tabela , mas depois para inserir os dados não me deixa porque diz que a chave estrangeira é violada , como é que consigo resolver este problema? Obrigada
-
alguem tem um exemplo de uma function / procedure que retorne o resultado de um select po c++?
-
create or replace PROCEDURE p_lista_necessidades(data1 date) IS CURSOR c (c_data reserva.data_ate%TYPE) IS SELECT cod_categoria FROM reserva WHERE data1 between data_de and data_ate; necessidades c%ROWTYPE; order by cod_categoria; BEGIN OPEN c(data1); FETCH c INTO necessidades; IF c%FOUND THEN dbms_output.put_line(necessidades.cod_categoria); ELSE dbms_output.put_line('NENHUM VEICULO NECESSITA DE ESTAR DISPONIVEL NESTA DATA'); END IF; END p_lista_necessidades; O Codigo deveria receber uma data e ir à minha tabela reservas e verificar quais as categorias (do veiculo) que têm que estar disponiveis nessa data. Cada cod_categoria corresponde a uma categoria 1-A,2-B ... 5-E. Tenho 5 categorias. No entanto ele não me esta a dar o resultado esperado.
-
Boas, A minha empresa passou a ter necessidade de certificar o software desenvolvido internamente de facturação. Já criei o par de chaves pública e privada. Falta o mais difícil! Assim a AT exemplifica como o deveremos fazer sugerindo o Openssl conforme segue com o seguinte exemplo: O texto a assinar será: 2010-05-18;2010-05-18T11:22:19;FAC 001/14;3.12; 1.º Passo: Guardar a mensagem a assinar 2010-05-18;2010-05-18T11:22:19;FAC 001/14;3.12; Num ficheiro de texto (que neste exemplo designaremos Registo1.txt), certificando-se que no fim da mensagem não fica qualquer quebra de linha, apenas o ";" sem aspas. 2.º Passo: Assinar a mensagem contida no ficheiro Registo1.txt com o seguinte comando: openssl dgst -sha1 -sign ChavePrivada.pem -out Registo1.sha1 Registo1.txt O ficheiro Registo1.sha1 conterá o hash em binário gerado pela aplicação OpenSSL. 3.º Passo: Seguidamente é necessário efetuar o encoding para base 64 do ficheiro Registo1.sha1: openssl enc -base64 -in Registo1.sha1 -out Registo1.b64 -A O ficheiro designado por Registo1.b64 é que contém os 172 carateres em ASCII da assinatura que deverão ser transportados para a base de dados e mais tarde exportados para o campo (Hash) do SAF-T(PT). O parâmetro -A serve apenas para a aplicação OpenSSL gerar a assinatura numa única linha evitando as quebras de linha adicionais. Como resultado o ficheiro Registo1.b64 conterá a seguinte assinatura: oso2FoOw4V941CwKTrv6xwzUrOtxBWCwU0yLVAqKwf0CNKZHM ETG1XZZC4spRSyby1uDXBggplogrl8gHnvevA00UEoAvGJo9Fa3DO A0MhZNDa9/rNvu71pp+0zHmN2ra5IWpiHcgmUYxm5qamLBk49rk gvl7h1myKCYBKqgu60= ... Alguém me sabe explicar como o faço em PL/SQL no Oracle 9i ? Tenho andado às voltas com o dbms_crypto_toolkit e o utl_encode mas não consigo o mesmo resultado. Alguém me pode ajudar? Obrigado Carlos
-
Olá pessoal, estou com uma dificuldade para somar e contar duas colunas na tabela. Eu quero contar o b.nr_seq_item e somar o vl_conta, sendo que a minha relação entre as tabelas é de 1 para n, no caso a.nr_sequencia (1) e b.nr_seq_item (n), o mesmo se aplica ao vl_conta. Eu uso o comando count(b.nr_seq_item) porem o mesmo me retorna erro e só consigo somar o atributo nr_seq_item, sem fazer relação com a outra tabela. SELECT a.nr_sequencia, a.dt_envio, a.dt_rec_destino, b.nr_seq_item, decode(a.ie_tipo_protocolo,'5',obter_valor_conta(b.nr_seq_interno,'0'),'') vl_conta FROM protocolo_documento a, protocolo_doc_item b WHERE a.dt_envio BETWEEN '01/10/2014' and '02/10/2014' AND a.nr_sequencia = b.nr_sequencia order by dt_envio Eu preciso de um valor parecido com o abaixo: nr_sequencia dt_envio dt_rec_destino nr_seq_item vl_conta 123 01/11/2014 04/11/2014 20 $5.000,00 ---------- Mas só consigo o resultado a baixo nr_sequencia dt_envio dt_rec_destino nr_seq_item vl_conta 123 01/11/2014 04/11/2014 8 $1.000,00 123 01/11/2014 04/11/2014 2 $800,00 123 01/11/2014 04/11/2014 4 $100,00 123 01/11/2014 04/11/2014 6 $100,00 Como posso usar o count e o sum corretamente? 😕
-
Boa tarde, Tenho uma function em pl/sql em que recebo como parametros dados de uma tabela. E queria inserir um novo registo noutra tabela, mas antes faço a validação dos parametros recebidos. Para isso faço vários select's consecutivos para ver se dados que ele vai inserir nesse novo registo está de acordo com registos das outras tabelas. FUNCTION valida( first_name_param IN HR.EMPLOYEES.FIRST_NAME%TYPE, last_name_param IN HR.EMPLOYEES.LAST_NAME%TYPE, email_param IN HR.EMPLOYEES.EMAIL%TYPE, phone_number_param IN HR.EMPLOYEES.PHONE_NUMBER%TYPE, hire_date_param IN HR.EMPLOYEES.HIRE_DATE%TYPE, job_id_param IN HR.JOBS.JOB_ID%TYPE, salary_param IN HR.EMPLOYEES.SALARY%TYPE, commission_pct_param IN HR.EMPLOYEES.COMMISSION_PCT%TYPE, manager_id_param IN HR.EMPLOYEES.MANAGER_ID%TYPE, department_id_param IN HR.DEPARTMENTS.DEPARTMENT_ID%TYPE) RETURN BOOLEAN IS manager_id_aux HR.EMPLOYEES.MANAGER_ID%TYPE; depart_id_aux HR.DEPARTMENTS.DEPARTMENT_ID%TYPE; job_id_aux HR.JOBS.JOB_ID%TYPE; BEGIN SELECT distinct e.manager_id --verifica se manager_id existe na tabela employees INTO manager_id_aux FROM hr.employees e WHERE e.manager_id = manager_id_param; SELECT distinct d.department_id --verifica se o department id existe na tabela departments INTO depart_id_aux FROM hr.departments d WHERE d.department_id = department_id_param; SELECT distinct j.job_id --verifica se o job id existe na tabela jobs INTO job_id_aux FROM hr.jobs j WHERE j.job_id = job_id_param; INSERT INTO employees VALUES (employees_seq.NEXTVAL, first_name_param, last_name_param, email_param, phone_number_param, TRUNC(SYSDATE), job_id_param, salary_param, commission_pct_param, manager_id_param, department_id_param); IF SQL%ROWCOUNT = 1 THEN return TRUE; ELSE return FALSE; END IF; exception when TOO_MANY_ROWS then return FALSE; when NO_DATA_FOUND then DBMS_OUTPUT.PUT_LINE('Foram introduzidos valores incorrectos'); return FALSE; when OTHERS then DBMS_OUTPUT.PUT_LINE('Ocorreu um erro:\n ' || SQLERRM); return FALSE; END; Só que queria controlar que select resulta numa excepção do tipo no_data_found, Assim perco o controle de qual disparou a excepção. Antes tinha um fi ocm um cursor explicito: IF SQL%NOTFOUND. Só que não têm lógica o if sendo que a excepção é dispara sempre antes do if.. por isso fica sem efeito... Existe alguma maneira de controlar qual o select que resultou na excepção ? Ou forma de ignorar a excepção e depois no código usar o cursor explicito ? Obrigado pela atenção, alves077
-
Boa tarde, Gostaria de saber como eu faço para calcular o intervalo de duas datas no mesmo atributo, por exemplo: Tabela: Conta Nr_seq - Data - Etapa 1 - 05/10/2014 08:30:12 - aberto 2 - 06/10/2014 09:25:12 - encaminhado 3 - 07/10/2014 15:00:23 - Fechado Preciso saber o resultado de cada alteração da etapa, exemplo, qual o tempo gasto para mudar de aberto para encaminhado e quanto tempo demorou para mudar de encaminhado para fechado, como faço para calcular isso? Obrigado
-
Boas, Tenho uma tabela dos empregados de uma empresa, tenho que fazer uma consulta de uma linha que me dê o total dos empregados, até aqui fácil com o count() consigo contar os empregados. Só que na mesma consulta desse total tenho que apresentar o número de empregados no projecto x,y e z. Por exemplo. Na tabela dos empregados tenho um campo que me diz o projecto em questão. A minha dúvida é como eu consigo fazer como se fosse um if com cada campo da procura (select) que estou a fazer ? Isto é, como faço para contar do total só uma parte com uma determinada restrição ? Deveria aparecer algo como: Total | Projeto x | Projeto y | Projeto z 60 8 9 19 Obrigado pela atenção, alves077
-
Boas pessoal Estou a desenvolver o meu projeto de faculdade em oracle e precisava saber qual o melhor formato de áudio e vídeo que devo escolher para carregar áudio e vídeo para a base de dados. Também queria saber qual o tipo de dados que o campo deve ter para aceitar esses formatos de áudio e vídeo. obrigado 🙂 p.s. e já agora como faço para carregar esses dados
-
Boa tarde, Estou com uma dificuldade em Oracle PL/SQL. Tenho uma tabela com três atributos o Número, Data de entrada, data de saida. Pretendo para cada um dos números ir buscar a data anterior. Estou a utilizar a seguinte query. select numero, dt_ent, dt_sai, LAG (dt_sai,1) over (ORDER BY numero,dt_ent) AS DataAnterior from DATAS; Ela faz o que me pede, mas a questão é que eu queria que ele só me retornasse a data anterior quando o mesmo número existe mais que uma vez. A query está-me a devolver isto: NUMERO DT_ENT DT_SAI DataAnterior 10000032 10.01.01 10.01.11 NULL 10000236 10.01.07 10.01.20 10.01.11 10000862 10.01.11 10.02.04 10.01.08 10000891 10.01.11 10.01.12 10.02.04 10000924 10.01.11 10.01.21 10.01.12 10001055 10.01.12 10.01.13 10.01.21 10001055 10.01.13 10.01.18 10.01.13 10001055 10.01.20 10.01.21 10.01.18 Eu pretendia que ela me devolvesse algo deste género. NUMERO DT_ENT DT_SAI DataAnterior 10000032 10.01.01 10.01.11 NULL 10000236 10.01.07 10.01.20 NULL 10000862 10.01.11 10.02.04 NULL 10000891 10.01.11 10.01.12 NULL 10000924 10.01.11 10.01.21 NULL 10001055 10.01.12 10.01.13 NULL 10001055 10.01.13 10.01.18 10.01.13 10001055 10.01.20 10.01.21 10.01.18 Como poderei fazer isto? Cumprimentos
-
http://www.oracle.com/technetwork/java/javase/8-whats-new-2157071.html
-
Boa noite. A minha dúvida é simples e está explicada no título. Tenho uma tabela e quero que determinado valor de uma coluna seja incrementado a cada hora. Virei o google ao contrário e não consegui encontrar nada que me ajudasse. Encontrei algo sobre schedulers e jobs, mas não percebi nada e fiquei sem saber se a solução que procuro passa por aí. Obrigado. Cumprimentos.
-
Boas Pessoal, Nunca trabalhei com oracle e necessito de fazer uma mini programa em c#, para escrita numa base de dados em oracle. Já instalei a versão Oracle Database 11g Express edition, criei um workspace chamado TESTE depois com os comandos sql criei uma tabela chamada MICRO_V1, com 2 colunas FORCA, E CURSO. Em seguida no c# criei a connection string conn.ConnectionString = "User Id=" + "TESTE" + ";Password=" + "paulo" + ";Data Source=" + "ORCL" + ";"; Penso que o data source tem de ser criado no OBDC DATA SOURCE ADMINISTRATOR. Criei um novo com o driver Oracle in XE o tns service name pus XE pois foi o que encontrei pela web. Fiz o teste da conection com o user TESTE, e dá tudo ok. No C# usando a connection string que apresento acima. dá erro de abertura do TNS.... Alguem me pode ajudar.. Cumprimentos Paulo Rocha
-
Boas tardes, Tenho 3 tabelas, a tabela CLIENTES, INSCRICAO e AULAS. A tabela Inscrições tem chave estrangeiras: ID_CLIENTES (FK) ID_AULAS (FK) E chave primária: ID_INSCRICAO O Objectivo é criar um select, mas que apresente todas as tabelas em função das inscrições ou seja (tabela.atributo): INSCRICAO.ID_INSCRICAO | INSCRICAO.DATA | CLIENTES.CNOME | AULAS.ANOME | AULAS.DATA | AULAS.VAGAS | Já experimentei usar o modelo: SELECT INSCRICAO.ID_INSCRICAO, INSCRICAO.DATA, CLIENTES.CNOME, AULAS.ANOME,AULAS.DATA,AULAS.VAGAS FROM table1 INSCRICAO left outer join table2 CLIENTES on INSCRICAO.ID_INSCRICAO=CLIENTES.ID_CLIENTES left outer join table3 AULAS on AULAS.ID_AULA = INSCRICAO.ID_INSCRICAO; Ou me dá erro ou multiplica as linhas das tabelas, e o objectivo era ter o mesmo numero de registos que a tabela inscrições Alguém pode ajudar? Obrigado Cumps