Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: DI-1722

Inserir

Insere Permite inserir um novo registro em uma tabela do banco registro vinculados ao Banco de dados ou gerar uma requisição POST a partir de uma Fonte de dados.

Parâmetros

Nome

Tipo

Doc

Parâmetro 1Objeto/campos

Objeto contendo o registro com os dados a serem inseridos, quando configurado via objetos

ou, campos, contendo um ou mais dados a serem inseridos, quando configurados via campos


Image Added

Figura 1 - Bloco Inserir

Compatibilidade

  • Bloco servidor: cronapi.database.Operations.insert()

Âncora
retorno
retorno

Nota

Os parâmetros de entrada do bloco vão variar de acordo com os campos ou objeto selecionados no assistente da janela de configuração do bloco de programação. 

Âncora
retornoBlocoretornoBloco

Retorno

Retorna um objeto contendo os campos selecionados da entidade. O retorno É importante destacar que o retorno da chave primária (PK) junto com o objeto varia de acordo com o Tipo de PK e o Banco de dados utilizado (Figura 12). 

Assim, quando o tipo de chave primária (PK) é definida como:

  • "Auto incremento", ou seja, o banco de dados é quem gera o valor da chave , e o retorno ocorrerá apenas ao utilizar os bancos Oraclee  e Firebird (Figura 1).
  • "Nova GUID", ou seja, o servidor (Java) da aplicação é quem gera o valor da chave , e o retorno sempre ocorrerá.


Image RemovedImage Added

Figura 1 2 - Retorno dos objetos ao utilizar banco de dados e tipo de PK distintos


Informações

Acesse o tópico Estrutura da Classe da documentação Diagrama de dados para entender mais sobre a propriedade Tipo de PK.

Compatibilidade

Image Removed Servidor

Configuração

Características do bloco

É possível Inserir um registro na tabela do banco de dados de duas formas diferentes, via campos ou por objeto, essa configuração é feita a partir do campo Tipo (destaque 2 da figura 1).

Para configurar o bloco Inserir, clique no símbolo da engrenagem, isso fará com que a janela Configurar Bloco de Programação seja exibida. Após informar a entidade (destaque 1 da figura 1), é possível selecionar os campos que serão usados a partir dos atributos do objeto (Tipo Campos) ou apenas passando o Objeto, nesse caso, não será possível configurar os campos.

Image Removed

ícone de engrenagem (seta da Figura 3). Após esta ação, a janela do Assistente será exibida permitindo a configuração dos campos de forma visual, não necessitando de uma interação direta com códigos na linguagem JPQL ou SQL. As instruções geradas pelo Assistente podem ser configuradas a partir de uma Entidade, Fonte de dados ou SQL Nativo. Para mais detalhes consulte a documentação Assistente.


Image Added

Figura 3 Figura 2 - Inserção de dados via campos


Destaques da Figura 3:

  1. Entidade: abre a janela de seleção de entidades.Tipo: informa se o bloco será alimentado a partir dos atributos "Campos" da entidade ou a partir do "Objeto"
  2. Tipos: define como será inserido o registro:
    • Campos: permite selecionar os campos que serão inseridos.
    • Objeto: esta opção não permite definir os campos, o bloco insere o registro com base no objeto informado. Veja o Exemplo 1 para mais detalhes de configuração.
  3. + Novo Campo: clique para adicionar adiciona os campos da entidadeque serão inseridos.
  4. Campos: lista de campos adicionados.
  5. Botão Excluir: apaga os campos inseridos. Exclua todos os campos para retornar ao tipo "Objeto".

Para saber mais sobre o campo Modo de Consulta, acesse a figura 1.1 da documentação Assistente de consulta.informações das demais opções exibidas no Assistente do bloco Inserir, consulte o tópico Estrutura da Consulta da documentação Assistente de consulta.

Parâmetros

Parâmetro "N"

Os parâmetros da função são exibidos de acordo com o Tipo (destaque 2 da Figura 3) escolhido no Assistente de consulta. Isso implica que a cada campo selecionado, um parâmetro é apresentado no bloco da função.

  • Posição: 1 ou mais
  • Tipo: Depende do tipo do dado do atributo.

Âncora
exemplo1
exemplo1

Exemplo 1 - Inserção

via campos

por objeto

A função a seguir apresenta um exemplo de uso do bloco Inserir configurado com o Tipo "Objeto" (destaque 2 da Figura 3) a partir da classe "Aluno" do Diagrama de dados. O objeto em questão é passado com todos os parâmetros preenchidos diretamente no bloco Criar novo objeto


Image Added

Figura 4 - Exemplo de uso do bloco Inserir passando um objeto como parâmetro


Na imagem abaixo, podemos observar o resultado de execução da função da Figura 4.


Image Added

Figura 4

Assim que selecionamos a entidade (destaque 1 da figura 2), o bloco é configurado por padrão com o tipo objeto, para que possamos mudar o tipo para campos, devemos clicar em + Novo campo (destaque 3 da figura 2) para adicionar os campos. Definidos os campos, basta inserir os valores que serão salvos no registro, confira na figura 3.

Image Removed

Figura 3 - Bloco de programação Inserir configurado via campos

Confira abaixo o resultado da inserção. 

Image Removed

Figura 3.1 - Registro sendo exibido na Grade

Exemplo 2 - Inserção

via objeto

por campos

A função abaixo apresenta um exemplo de uso do bloco Inserir configurado com o Tipo "Campos" (destaque 2 da Figura 3) a partir da Fonte de dados "query156543". É importante destacar que, diferente do exemplo anterior, no qual ao selecionar uma classe é possível utilizar tanto o Tipo "Campos" como "Objeto", ao utilizar uma Fonte de dados apenas o Tipo "Campos" é permitido.

O bloco da função abaixo foi configurado conforme a Figura 3. Após a execução da função o registro será inserido no banco de dados.


Image Added

Figura 5 - Exemplo de uso do bloco Inserir configurado com o Tipo Campos


Na imagem abaixo, podemos observar o resultado de execução da função da Figura 5.


Image Added

Figura 5

Além da inserção via campos, também é possível inserir um registro passando um objeto já com seus atributos. No exemplo abaixo estamos criando um objeto a partir do bloco de programação Criar novo objeto.  

Image Removed

Figura 4 - Bloco de programação Inserir configurado via objeto

Confira abaixo o resultado da inserção. 

Image Removed

Figura 4.1 - Registro sendo exibido na Grade

Exemplo 3 - Uso do retorno do bloco

Como Visto que o bloco Inserir retorna um objeto do registro passado (ver mais detalhes no tópico Retorno), podemos aproveitar esse retorno para alimentar outra tabela que possui como campo a chave estrangeira (FK) do primeiro objeto.Nesse  No exemplo abaixo, estamos alimentando a tabela Cliente e, em seguida, a tabela Telefone que possui relacionamento 1toN com Cliente (Figura 56). O Tipo de PK (chaves primárias) das duas tabelas foram configurados como "Nova GUID".


Image Modified

Figura 5 6 - Relacionamento utilizado nesse exemplo


A função da figura 5Figura 6.1 demostra apresenta o uso dos blocos Inserir e seus retornos.Image Removed


Image Added

Figura 56.1 - Utilizando o retorno do bloco Inserir


Destaques da Figura 6.1:

  1. A variável "cliente" recebe o retorno do bloco Inserir que alimenta configurado com a entidade classe Cliente.Nesse  Neste bloco Inserir , não incluímos o campo "id, nesse caso, o id foi adicionado automaticamente ", visto que ele será adicionado automaticamente pelo servidor da aplicação.
  2. Usamos o bloco Se se faça apenas para fazer uma validação do retorno do primeiro bloco Inserir.
  3. A variável "telefone" recebe o retorno do segundo bloco Inserir, onde informamos manualmente o id da entidade Telefone, os campos numero, ehFixo os campos "id", "numero" e "fixo" da classe Telefone e, no parâmetro "cliente", passamos inserimos o objeto de retorno do primeiro bloco Inserir.Nesse caso, podemos informar  Neste bloco, diferente do primeiro, informamos o objeto completo, como fizemos, ou . Uma outra opção, seria utilizar o bloco Obter campo e informar apenas o "id" do objeto.
  4. Em seguida, imprimimos as variáveis "cliente" e "telefone", com o retorno dos 2 blocos Inserir utilizados.
  5. O resultado do passo 4 pode ser visto no Console do depuradorDepurador.


Nesta página

Índice

Sobre o bloco

O bloco de programação Inserir insere dados em um registro de duas formas diferentes, a primeira é passando os campos que se deseja inserir, como exemplificada na figura 1.1. A segunda forma é passando diretamente o objeto, figura 1.3.

Sobre Inserção(Insert SQL)

Insert é uma declaração da linguagem SQL, “Structured QueryLanguage” ou, em Português, Linguagem de Consulta Estruturada, que insere um ou mais registros em uma tabela em um banco de dados. para saber mais clique aqui.