Seqüência Funções no SQL
Quando usamos uma coluna em nossa tabela que possui valores seqüenciais como um número de série ou um número de rolo que incrementa com um padrão, podemos criar uma sequência para encontrar o problema. Nesta sequência, daremos várias restrições de acordo com nossas necessidades. A sintaxe SQL para criar uma sequência é a seguinte:
O nome da série deve ser escrito contra o comando "Criar sequência" na sintaxe acima. O valor inicial da sequência será então gravado no comando "start with", seguido pelo valor incremental para o comando "incremento por". Os comandos "minvalue" e "maxvalue" serão usados para estabelecer o valor mínimo da sequência ou o valor máximo. Explicaremos se a sequência deve terminar quando atingir o valor máximo ou retornar ao valor original na última linha da sequência.
Quando precisamos alterar uma sequência entre algumas restrições ou erros no programa, usamos várias funções de sequência no PostgreSQL. Eles também são chamados de funções de manipulação de sequência. As funções associadas ao conceito de função de sequência são as seguintes:
Neste guia, estaremos conversando sobre a função SetVal no PostgreSQL.
SetVal Seqüência Função de manipulação
A função SetVal redefine a variável de contador de sequência atual que continua incrementando de acordo com as restrições definidas pelo usuário e dá uma verificação de como a sequência deve prosseguir após este ponto. A função SetVal é ajustável às nossas necessidades e pode levar diferentes conjuntos de parâmetros como o nome da sequência, o próximo valor que a função Nextval retornaria e a restrição de álgebra booleana de verdadeiro e falso.
A função SetVal é normalmente usada em associação com o comando "select", no qual o usuário especifica as restrições e depois especifica a ordem em que a alteração deve ser feita dentro da tabela.
A função SetVal manipula o próximo valor da função NextVal, pois leva o valor atual do NextVal como um parâmetro. Se o terceiro parâmetro que é o estado do valor que pode ser verdadeiro ou falso for determinado, o próximo valor próximo será alterado de acordo com o estado em que é compilado em tempo de execução quando a sequência estiver localizada. Vejamos a sintaxe para executar esta função de manipulação no PostgreSQL:
>> Selecione SetVal (nome da sequência, próximo valor da sequência, verdadeiro ou falso);A sintaxe acima para executar esta função no PostgreSQL também pode ser escrita como:
>> Selecione SetVal (nome da sequência, próximo valor da sequência);Podemos escolher ambas.
Agora que conhecemos a sintaxe e o funcionamento da função SetVal, examinaremos o objetivo principal que essa função serve no ambiente PostgreSQL.
Manipulação de uma sequência pela função SetVal
Como discutimos acima do conceito de seqüências e como criamos uma sequência. Nesse caso, criaremos uma sequência primeiro para entender e manipular essa sequência pela função SetVal. Criaremos uma sequência para números de rolo de alunos em uma aula escrevendo este código, como mostrado no instantâneo abaixo:
Como você pode ver na sintaxe acima, construímos uma sequência chamada "sq 1" que começa com o número 001 e é aumentado por um em cada iteração. O valor mínimo para esta sequência é 0, enquanto o valor máximo é 100. Essa sequência ocorre em um ciclo, o que significa que, quando o valor máximo é alcançado, ele começará novamente a partir de 001, pois sugere que a classe está cheia e o próximo aluno deve ser adicionado a outra classe.
Agora, vamos supor que um aluno cai de uma aula após os valores dos dados serem inseridos pela função NextVal, teremos que alterar a sequência para atribuir os números de rolo em uma ordem hierárquica pela função SetVal.
Nesta parte do código, definimos o próximo valor da função NextVal como "012", afirmando -o como falso. Portanto, os dados do aluno que entraremos após o aluno do número de rolos "012", que desistiu da aula, obtemos automaticamente o número do rolo "012", como você pode ver na demonstração abaixo:
Você pode verificar a saída da imagem anexada.
À medida que executamos a consulta Insert para inserir um valor na tabela, a função NextVal deu o valor que foi definido pela função SetVal na sequência SQ_1.
Diferente Maneiras de usar a função SetVal
Se tivermos que garantir que o último valor da função NextVal seja verdadeiro e podemos adicionar o outro valor de acordo com as restrições definidas na sequência, podemos escrever essa consulta de duas maneiras diferentes no ambiente pós -Gresql:
SetVal Função sem o estado booleano
A sintaxe para executar a função SetVal sem o estado booleano é declarada abaixo:
>> selecione setVal ('seq_1', 052);A saída pode ser verificada na captura de tela anexada.
Na sintaxe acima, o próximo valor da função NextVal será definido como "053", o que significa que o valor mais recente da função é utilizado.
Função setval com o estado booleano
A função SetVal também pode ser executada com a função booleana, a afirmação é:
>> selecione setVal ('seq_1', 052, true);A saída pode ser verificada na captura de tela anexada.
Nos dois exemplos acima, o próximo valor da função NextVal será definido como "053", pois satisfaz a restrição de que o valor mais recente da função Nextval seja utilizado. Na saída acima, quando inserimos o próximo valor usando uma consulta de inserção com a função NextVal na sequência após 52, deu 53 na tabela, como mostrado acima.
Conclusão
Neste artigo, aprendemos sobre o conceito de seqüências. Discutimos por que usamos essas seqüências em nossas tabelas para gerar valores neste artigo. As diferentes funções de sequência que são usadas para alterar as seqüências no PostgreSQL também foram discutidas. Um deles foi a função SetVal que discutimos em uma grande provação neste artigo. Os diferentes tipos de usos que essa função pode ser utilizada também foram discutidos. No final, também analisamos como essa função funciona no ambiente PostgreSQL com seus diferentes tipos de restrições dadas no parâmetro.