Ir ao conteúdo

Posts recomendados

Postado

O que esta errado neste código ?? ( criado no sqlite browser )

 

CREATE TABLE SOCIO (
  Id_Socio Integer primary key ,
  INome    Varchar (256)  ,
  CPF     varchar (11) ,
  Email   varchar (256)  ,
   foreign key (Id_ Situacao ) references ((Id_ Situacao)
)
  ;
  
  create table Situacao (
    Id_Situacao integer primary key ,
   Id_Situacao Varchar (10) ,
  )
  ;
  
  create table  CARRO (
   Id_Carro integer ,
   Modelo varchar (128) not null,
   Cor varchar (64) not null ,
   Placa varchar (10) not null ,
   foreign key (Id_Socio integer) ,
    foreign key (Id_ marca integer) ,
    )
    ;
    
    create table MARCA (
    Id _marca integer primary key ,
    Marce  varchar (128) not null ,
      )
      ;

 

Postado

Boa tarde, Marcelo

 

Há alguns problemas de sintaxe no seu código. Como dica inicial, te indico a utilizar um padrão na declaração dos nomes das colunas/tabelas do seu banco de dados, visando melhor visualização/suporte para possíveis necessidades futuras. Então, se você desejar utilizar colunas com todos os nomes maiúsculos, siga esse padrão e vice-versa.

 

Em relação aos problemas de sintaxe, para que o banco entenda que há uma comunicação entre as tabelas, é preciso que você crie uma coluna na tabela que irá receber a foreign key. Por exemplo, a tabela sócio, irá receber a foreign key de situação, sendo assim, é necessário criar uma coluna com esse campo a ser armazenado. Conforme o exemplo:
 

create table socio
(
  id_socio integer primary KEY,
  ds_nome varchar(256),
  nr_cpf VARCHAR(11),
  ds_email varchar(256),
  id_situacao integer,
  foreign key(id_situacao) references SITUACAO(id_situacao)
);

Note que foi criado uma relação da primary key de situacao com a coluna id_situacao da tabela socio, dessa forma é possível realizar uma comunicação entre os dados, fazendo com que não haja inconsistência nas informações geradas.

 

Outro problema, na tabela sócio é a repetição de colunas, sendo que estão em formatos diferentes. Note que você criou a primary key, do código da situação, como inteiro e também criou uma coluna com o mesmo nome com o tipo varchar. Se você deseja criar uma descrição para aquele tipo de situação, por exemplo, aconselho você criar um campo com outro nome, do tipo varchar. Conforme o exemplo:

 

create table situacao
(
  id_situacao integer primary key,
  ds_descricao varchar(255)
);

Outra coisa, na declaração dos últimos campos de uma tabela, não se utiliza vírgula no final.

 

Tenta ajustar isso no seu código, qualquer dúvida é só postar!

 

Bons estudos.

 

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!