Uma sequência refere -se a um conjunto de valores inteiros exclusivos que são gerados sob demanda. Eles são um recurso predominante em muitos mecanismos de banco de dados. Isso ocorre porque vários cenários exigem que cada registro no banco de dados tenha um identificador exclusivo.
Vamos discutir o conceito de seqüências SQL neste tutorial.
Como funcionam as sequências SQL
Não há maneira universal de descrever como as sequências funcionam. Isso ocorre porque vários mecanismos de banco de dados os implementam de maneira diferente.
Vamos aprender como isso funciona.
Sequências em MySQL
As sequências no MySQL são implementadas definindo o atributo Auto_incrent. Na maioria dos casos, esta coluna também é selecionada como a chave primária, pois cada valor na coluna deve ser único.
Podemos ilustrar como usar uma sequência no MySQL, como mostrado na consulta abaixo:
-- MysqlA consulta acima cria uma coluna com uma sequência SQL usando a palavra -chave Auto_increment. Observe que também definimos a restrição de chave primária para a coluna.
Embora a adição de sequências no MySQL seja tão fácil quanto ilustrada acima, há alguns pontos a serem observados:
Sequência no PostgreSQL
No PostgreSQL, as seqüências são objetos definidos pelo usuário ligados ao esquema em que são criados.
Para criar uma sequência no PostgreSQL, use a sintaxe como mostrado abaixo:
-- PostGresqlOk, o que tudo isso significa? Permita -nos dividi -lo em seções menores que podemos entender.
Criar sequência
A primeira parte é a sequência de criação. Isso permite que você crie uma nova sequência se não existir. O nome da sequência pode ser o que você desejar.
Como data_type
A cláusula AS permite especificar o tipo de dados para a sequência. PostgreSQL permite tipos de SmallInt, Int e Bigint. Se você não deseja identificar o tipo de dados, pode pular esta cláusula, e o PostgreSQL será padrão para Bigint.
Incremento por
Esta cláusula especifica o valor adicionado à sequência atual para criar um novo valor de sequência. Por exemplo, se a sequência for 1,2,3,4,5, o valor de incremento é 1.
Se você deseja começar de cima e descer à medida que os registros são adicionados, especifique um valor negativo ao incremento por cláusula.
Por padrão, o PostgreSQL usará o valor de incremento de 1.
Minvalue
Esta cláusula define o valor mínimo para a sequência. Se nenhum valor for especificado, o PostgreSQL usará o padrão.
VALOR MÁXIMO
A cláusula Maxvalue define o valor máximo para a sequência.
COMEÇA COM
Esta cláusula define o valor inicial para a sequência. Se nenhum valor for especificado, o minValue será usado para sequências ascendentes e o maxvule será usado para sequências descendentes.
Cache
Esta cláusula definirá quantos números de sequência devem ser pré -alocados e armazenados na memória. Isso permite acesso mais rápido. Por padrão, o PostgreSQL usará um valor de 1, portanto, sem cache.
CICLO
A cláusula de ciclo permite especificar o envoltório quando os valores máximos ou min são alcançados na sequência. PostgreSQL usará Min e MaxValue, respectivamente, quando o limite for atingido se o ciclo não especificado.
De propriedade de
Esta opção especifica com a qual a coluna da tabela a sequência está associada. Portanto, se a coluna ou tabela for descartada, a sequência também será excluída.
Se a sequência não estiver associada a nenhuma tabela ou coluna, você poderá definir o que não.
Para criar uma sequência simples no PostgreSQL, execute a consulta:
Crie sequência my_seqA consulta acima cria uma nova sequência associada ao my_column na tabela my_table.
Você pode explorar mais sobre as sequências PostGresql no recurso abaixo:
https: // www.PostGresql.org/docs/atual/sql-createsequence.html
Sequências no servidor SQL
Como o PostgreSQL, as seqüências no servidor SQL são objetos definidos pelo usuário. Portanto, eles usam sintaxe intimamente semelhante para sequências no PostgreSQL. A única diferença é a sintaxe.
A sintaxe de exemplo é como ilustrado abaixo:
Crie sequência [schema_name.] sequence_nameEm vez de nenhum, o SQL Server não usa ciclo nem cache.
Você pode explorar mais sobre as sequências do SQL Server no recurso abaixo:
https: // docs.Microsoft.COM/EN-US/SQL/T-SQL/DEMTIAÇÕES/CREATE-SEQUENCE-TRANSACT-SQL?View = SQL-Server-ver15
Nota: Para usuários do banco de dados Oracle, verifique o recurso abaixo
https: // docs.oráculo.com/cd/b12037_01/servidor.101/b10759/declarações_6014.htm
Conclusão
Este artigo detalhado abordou sequências SQL e como podemos usá -las em nossos bancos de dados. Fique ligado para mais tutoriais.