O que é pl / sql bom para?

PL / SQL é a linguagem para usar quando escrever o código que reside no banco de dados. No artigo a seguir, você verá situações diferentes em que você vai encontrar PL / SQL útil.

Video: PL/SQL: Collections Part-2

Usando gatilhos de banco de dados

UMA desencadear é um evento dentro dos DBMS que pode causar algum código para executar automaticamente. Existem quatro tipos de gatilhos de banco de dados:

  • gatilhos de nível Tabela pode iniciar a atividade antes ou depois de um INSERT, UPDATE, ou DELETE evento. Estes são mais comumente usados ​​para rastrear as informações do histórico e alterações de banco de dados, para manter os dados redundantes sincronizados, ou para melhorar a segurança, impedindo certas operações ocorra.
  • gatilhos no nível de vista são muito úteis. UMA Visão é uma instrução SQL armazenado que os desenvolvedores podem consultar como se fosse uma tabela de banco de dados em si. Ao colocar VEZ DE gatilhos em um ponto de vista, o INSERT, modificar e apagar os comandos podem ser aplicados à vista independentemente da sua complexidade, porque o gatilho INSTEAD OF define o que pode ser feito para a vista.
  • gatilhos no nível de banco de dados pode ser ativado na inicialização e desligamento. Por exemplo, quando o banco de dados é iniciado, você pode querer testar a disponibilidade de outros bancos de dados ou serviços Web. Antes de um desligamento de banco de dados, você pode querer avisar outros bancos de dados e serviços Web que o banco de dados vai offline.
  • gatilhos no nível de sessão pode ser usado para armazenar informações específicas. Por exemplo, quando um usuário faz logon ou fora, você pode querer executar um código que contém preferências e carrega-los do usuário na memória para acesso rápido. Quando a sessão termina, um gatilho pode salvar as preferências para uso futuro.

Video: como descargar e instalar Oracle y sql developer

Scripting com velocidade

Ao escrever código, a capacidade de digitar uma parte do código e executá-lo sem primeiro salvar-lo para o banco de dados é útil. Oracle oferece esta capacidade, que é suportado por todos os IDEs PL / SQL.

código de manter do lado do servidor

A maioria dos código PL / SQL é armazenado como unidades de programa no servidor. Uma aplicação típica tem muitas linhas de código.

Alguns programadores, particularmente os desenvolvedores baseados na Web que trabalham nos ambientes J2EE ou .NET, tente escrever a maior parte do código no servidor de aplicativos em Java (para desenvolvedores J2EE) ou VB.NET (para desenvolvedores .NET). Isso não é uma boa prática. Em um aplicativo de banco de dados, muito da lógica é dedicado a recuperar e atualizar informações. Se o código para realizar esta tarefa reside em um servidor de aplicação, deve enviar um pedido ao banco de dados através de uma rede. Em seguida, o banco de dados deve processar o pedido e enviar as informações de volta em toda a rede para a aplicação de processo. Como as redes e computadores são agora muito rápido, você pode pensar que isso levaria apenas frações de segundo. Embora este seja o caso para um único pedido, se uma aplicação muito complexo requer milhões ou mesmo centenas de milhões de interacções com o banco de dados, multiplicando o número de interacções por até fracções de um segundo pode levar a um desempenho muito pobre.



Mesmo operações relativamente simples que requerem apenas algumas solicitações de banco de dados pode ser problemático se o aplicativo está sendo acessado por centenas, milhares ou dezenas de milhares de usuários simultaneamente. É muito mais difícil construir um aplicativo de banco de dados intensivos sem o uso de codificação do lado do servidor que é para escrever todo o código para ser executado em um servidor de aplicativos.

Video: aula 2461 PL SQL Iniciando o uso de CURSOR ROW%COUNT

Um dos argumentos contra escrever código do lado do servidor é que o aplicativo não será portátil (não podem ser movidos de uma plataforma para outra). No entanto, a maioria das organizações que usam o Oracle foram usá-lo por um tempo muito longo (dez anos ou mais) e não está contemplando uma mudança para uma plataforma diferente. Além disso, o desenvolvimento Web está atualmente em um estado de fluxo rápido. Organizações mudam frequentemente entre .NET, J2EE e outros ambientes para o seu desenvolvimento aplicativo baseado na Web.

Ambos os ambientes .NET e J2EE estão em fluxo, também. No ambiente J2EE, o padrão da indústria para o desenvolvimento Web ou menos um ano atrás era criar páginas JavaServer (JSPs). Atualmente, o padrão da indústria é trabalhar no ambiente / Struts JSP. No próximo ano ou assim, JavaServer Faces (JSF) provavelmente vai se tornar o padrão da indústria. Portanto, o código escrito no meio-tier corre um alto risco de necessitar de ser reescrito no futuro.

código do lado do servidor executa mais rápido, é mais fácil de manter e teste, e é menos suscetível a mudanças do que código colocado na camada intermediária. Por conseguinte, a criação de porções significativas de uma aplicação na base de dados é uma melhor abordagem.

Há uma série de lugares onde você pode escrever código que seus aplicativos podem usar:

  • Porções de aplicações: PL unidades de programa / SQL pode retornar um conjunto de valores (funções), ou rotinas PL / SQL pode executar operações de banco de dados (procedimentos). Estas funções e procedimentos pode ser chamado por outros procedimentos e funções ou (no caso de funções) utilizados nas instruções SQL. rotinas PL / SQL pode ser tão grande e complexo como você precisa deles para ser. Algumas rotinas complexas podem conter milhares de linhas de código. sistemas inteiros pode conter milhões de linhas de código.
  • PL / código SQL embutido em vista: A Oracle permite embutir código na vista de banco de dados. O código pode realmente ser localizado em um dos dois lugares na vista. funções de primeira, você pode colocar corretamente trabalhada retornando um valor na parte SELECT de uma instrução SQL para recuperar informações adicionais, o que pode ou não ser parte das tabelas sendo consultadas.
    Você também pode incorporar PL / SQL no VEZ DE gatilhos em uma vista. Esses gatilhos permitem a execução de INSERT, UPDATE e DELETE operações em visões complexas, com PL / SQL programaticamente manipulação como essas operações devem ser tratadas.
  • rotinas de lotes: rotinas de lote executar código que processa um grande número de registros, ao mesmo tempo. Gerando faturas para cada cliente em um sistema ou processamento de cheques para uma organização inteira são exemplos de rotinas de lote. Estas rotinas são geralmente grandes, complexos e de banco de dados intensivos. Este tipo de rotina deve seguramente ser escrito em PL / SQL.

Publicações relacionadas