|
![]() |
||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||
Inserção Múltipla de Registros (Banco de Dados)Todos os dias nos deparamos com situações adversas nos ambientes de nossos clientes, me deparei com uma situação onde a conexão de internet do cliente deixa a desejar e nesta situação tive a necessidade de utilizar a inserção múltipla de registros, assim diminuindo o tráfego de dados, esta situação se aplica igualmente quando o sistema é utilizado por um número grande de usuários com uma centralização de dados, realizando desta forma a minimização de processos e fluxo. Crie uma variável para receber o comando SQL ao qual será executado somente no final do procedimento. Depois realize a abertura de uma transação para garantir a integridade dos dados, prepare como se fosse um cabeçalho do comando o insert na tabela conforme exemplo abaixo.
Depois do cabeçalho montado criei um while(laço de repetição), onde prepara os values(valores) concatenando eles entre parênteses e separados por vÃrgula, conforme o exemplo abaixo.
No MYSQL realizei inserção de mais de 3 mil registros, acredito que o limite pode ser o tempo de execução. No Oracle não é implementado o comando de insert desta forma, somente possibilitando o insert padrão, insert all ou insert dinâmico. Já no MSSQL(Sql Server) tem limitação de 1000 registros por padrão, caso realize mais, irá apresentar a seguinte mensagem de erro "The number of row value expressions in the INSERT statement exceeds the maximum allowed number of 1000 row values." Observação:não esqueça de fazer a variável SQL criada receber e concatenar os demais comandos SQL. |
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||
![]() |
![]() |
![]() |