SQL INSERT com
11/03/2020
0
Galera, estou com uma dúvida:
Estou aprendendo a trabalhar com SQL e me joguei num projeto aqui de gerenciamento de estoque e escolhi VB.net
Porém estou com dúvida em relação à CONSTRAINT, PRIMARY KEY, FOREIGN KEY e REFERENCES
Nessa tabela de cima, como faço para inserir dados?
A outra tabela (que acredito eu que é utilizada) é essa:
Se tiverem algum link pra eu estudar tbm, agradeço, precisa nem ficar explicando mto, é que procurei e só encontro em inglês. Entendo um pouco só.
Obrigado desde já!
Estou aprendendo a trabalhar com SQL e me joguei num projeto aqui de gerenciamento de estoque e escolhi VB.net
Porém estou com dúvida em relação à CONSTRAINT, PRIMARY KEY, FOREIGN KEY e REFERENCES
CREATE TABLE F_ITENSMOV ( ITM_CODIGO_ITEM VARCHAR( 10 ) CHARACTER SET NONE NOT NULL , ITM_CODIGO_FORNECEDOR VARCHAR( 4 ) CHARACTER SET NONE NOT NULL , ITM_ENTRADA FLOAT DEFAULT 0 NOT NULL , ITM_SAIDA FLOAT DEFAULT 0 NOT NULL , ITM_CODIGO_MOVIMENTACAO VARCHAR( 8 ) CHARACTER SET NONE NOT NULL , ITM_SALDO_ANTERIOR FLOAT NOT NULL , ITM_CODIGO_LOTE VARCHAR( 10 ) CHARACTER SET NONE NOT NULL , CONSTRAINT PK_ITENSMOV PRIMARY KEY ( ITM_CODIGO_MOVIMENTACAO, ITM_CODIGO_ITEM, ITM_CODIGO_FORNECEDOR ) ) ALTER TABLE F_ITENSMOV ADD CONSTRAINT FK_F_ITENSMOV FOREIGN KEY ( ITM_CODIGO_ITEM, ITM_CODIGO_FORNECEDOR ) REFERENCES F_ITEM ( ITE_CODIGO, ITE_CODIGO_FORNECEDOR )
Nessa tabela de cima, como faço para inserir dados?
A outra tabela (que acredito eu que é utilizada) é essa:
CREATE TABLE F_ITEM ( ITE_GEN INTEGER NOT NULL , ITE_CODIGO VARCHAR( 10 ) CHARACTER SET NONE NOT NULL , ITE_DESCRICAO VARCHAR( 80 ) CHARACTER SET NONE NOT NULL , ITE_PRECO FLOAT NOT NULL , ITE_NUM_LOTE VARCHAR( 10 ) CHARACTER SET NONE , ITE_CODIGO_FORNECEDOR VARCHAR( 4 ) CHARACTER SET NONE NOT NULL , ITE_CODIGO_FUNCIONARIO VARCHAR( 4 ) CHARACTER SET NONE NOT NULL , ITE_SALDO_ATUAL FLOAT DEFAULT 0 NOT NULL , ITE_DT_CADASTRO TIMESTAMP NOT NULL , CONSTRAINT PK_ITEM PRIMARY KEY ( ITE_CODIGO, ITE_CODIGO_FORNECEDOR ) )
Se tiverem algum link pra eu estudar tbm, agradeço, precisa nem ficar explicando mto, é que procurei e só encontro em inglês. Entendo um pouco só.
Obrigado desde já!
Vinícius Silva
Curtir tópico
+ 0
Responder
Post mais votado
11/03/2020
Olá Vinicius, tudobom ?
Primeiramente, vamos explicar as contraints.
As constraints são regras que definimos para que definir o comportamento dos dados em nossas colunas em uma tabela.
Com regras quero dizer que a primeira coluna que será o código do item será minha chave primária, logo a constraint da chave primária( Primary Key) será a condição que não poderá haver dados repetidos nesta coluna, e ela será o índice primário de busca.
Pronto, assim falamos das contraints e da primary key.
A Foreign key é uma regra definida quando fazemos uma associação entre tabelas, como a tabela cliente que tem como primary key a coluna cliente_id terá a constraint de foreign key (Chave estrangeira) com a tabela empresa que tem como referência a cliente uma coluna chama cliente_id também.
Agora, para realizar a inserção nas tabelas usamos os comandos INSERT INTO :
No exemplo acima construí o cenário de um cliente para uma empresa, poderia ser o contrário que é o mais comum, uma empresa com N clientes.
Então tudo se dá a partir do estudo de caso que irá ser a base para criação do molde do seu banco de dados .
Primeiramente, vamos explicar as contraints.
As constraints são regras que definimos para que definir o comportamento dos dados em nossas colunas em uma tabela.
Com regras quero dizer que a primeira coluna que será o código do item será minha chave primária, logo a constraint da chave primária( Primary Key) será a condição que não poderá haver dados repetidos nesta coluna, e ela será o índice primário de busca.
Pronto, assim falamos das contraints e da primary key.
A Foreign key é uma regra definida quando fazemos uma associação entre tabelas, como a tabela cliente que tem como primary key a coluna cliente_id terá a constraint de foreign key (Chave estrangeira) com a tabela empresa que tem como referência a cliente uma coluna chama cliente_id também.
CREATE TABLE cliente ( cliente_id int primary key auto_increment, //USO Direto da constraint na criação da tabela nome varchar(20) NOT NULL , //Constraint de Campo não vazio ); CREATE TABLE empresa ( empresa_id int primary key auto_increment, razao_social varchar(20) NOT NULL, client_id int , CONSTRAINT FK_PersonOrder('NOME DA REGRA') FOREIGN KEY (cliente_id) //Declaração da chave que será usada para chave estrangeira REFERENCES cliente(cliente_id) //Declaração de que tabela será usada de referência.
Agora, para realizar a inserção nas tabelas usamos os comandos INSERT INTO :
INSERT INTO cliente (nome) VALUES ('Lucas') ; INSERT INTO empresa (razao_social, client_id) VALUES ('Devmedia', 1) // Definimos a chave estrangeira que queremos referenciar da outra tabela, no caso o id de número 1 que é nosso único registro.
No exemplo acima construí o cenário de um cliente para uma empresa, poderia ser o contrário que é o mais comum, uma empresa com N clientes.
Então tudo se dá a partir do estudo de caso que irá ser a base para criação do molde do seu banco de dados .
Lucas Lima
Responder
Clique aqui para fazer login e interagir na Comunidade :)