Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
MARCELO CARDOSO76

SQL Server código sql não roda

Recommended Posts

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 ,
      )
      ;

 

Editado por DiF
Inserir o código com o botão CODE <>

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

 

Editado por XenoStory
Correção de erros de português
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×