Informática, perguntado por anamariagaldino, 1 ano atrás

Alguém pode ajudar nesse projeto..

Nosso projeto consiste em desenvolver um script na linguagem SQL (sintaxe SQLite). Esse script deve contemplar a criação das tabelas de acordo com o modelo físico abaixo:

Anexos:

diogolopess1oxzlrm: So nao esquece de declarar a primary key e a foreign key
naldinhosilvap459wd: DIEGO, só não entendi essa parte de declarar a primary key e a foreing key. Tem como vc explicar melhor?
diogolopess1oxzlrm: Por exemplos, vamos pegar a tabela SOCIO em que Id_Socio é uma chave primaria. Vc vai digitar como ta na imagem, Id_Socio integer primary key,
diogolopess1oxzlrm: E tem a chave estrangeira que liga a tabela socio a tabela situaçao. na tabela socio vc tem que que declarar a chave estrangeira que vem da tabela situaçao, ai e so digitar foreign key(Id_Situaçao) references SITUACAO(Id_Situaçao)
neomatrix: certinho acima das foreing key e primary key, porem no script citado na tabela situacao nao tem foreing key so primary key
cledersonbc: Olá jovens, vocês podem usar o sistema de chat do Brainly. Cliquem no perfil e em seguida no ícone de enviar mensagem.
neomatrix: tbm nao tem id_socio nao existe na tabela situacao
neomatrix: tabela marca tbam nao tem foreing key e nem id_carro olhem a tabela acima
naldinhosilvap459wd: neomatrix vc sabe então como que é feito esse script correto?
neomatrix: o script estã certo so retirar essas duas observaçao q fiz ..

Soluções para a tarefa

Respondido por cledersonbc
21
Bem, primeiro vamos definir a ordem da criação das tabelas.
1. SITUACAO
2. SOCIO
3. MARCA
4. CARRO

Não precisa ser necessariamente nessa ordem, mas optei por ela. Após definir a ordem, crie cada tabela apenas colocando o nome das colunas. Ex.:

CREATE TABLE TABELA (
campo1,
campo2,
campoN
);

Faça isso com todas as tabelas. Depois, adicione o tipo dos dados e, para os campos chaves, adicione a propriedade de primary key e not null. Se deseja que a chave seja inserida automaticamente em cada linha da tabela, use o autoincrement.

Depois crie os campos que serão a chave estrangeira e embaixo declare eles como chaves estrangeiras e para qual tabela.atributo estarão referenciando.

Para criar a relação (1, 1), basta que criar uma foreign key em ambas as tabelas.

-- Tabela da Situacao
CREATE TABLE SITUACAO (
    id_situacao INTEGER NOT NULL PRIMARY KEY,
    situacao VARCHAR(10),
    id_socio INTEGER DEFAULT NULL,
    FOREIGN KEY(id_socio) REFERENCES SOCIO(id_socio) -- Para (1,1)
);

-- Tabela do Socio
CREATE TABLE SOCIO (
    id_socio INTEGER  NOT NULL PRIMARY KEY,
    nome VARCHAR(256),
    cpf VARCHAR(11),
    email VARCHAR(256),
    id_situacao INTEGER,
    FOREIGN KEY(id_situacao) REFERENCES SITUACAO(id_situacao)
);

-- Tabela da Marca
CREATE TABLE MARCA (
    id_marca INTEGER NOT NULL PRIMARY KEY,
    marca VARCHAR(128),
    id_carro INTEGER DEFAULT NULL,
    FOREIGN KEY(id_carro) REFERENCES CARRO(id_carro) -- Para (1,1)
);

-- Tabela do Carro
CREATE TABLE CARRO (
    id_carro INTEGER NOT NULL PRIMARY KEY,
    modelo VARCHAR(128),
    cor VARCHAR(64),
    placa VARCHAR(10),
    id_socio INTEGER,
    id_marca INTEGER,
    FOREIGN KEY(id_socio) REFERENCES SOCIO(id_socio),
    FOREIGN KEY(id_marca) REFERENCES MARCA(id_marca)
);

Cole o script acima em um arquivo chamado script com a extensão SQL (script.sql) e depois crie uma base de dados com o sqlite3. Exemplo:
$ sqlite3 minha_base.sqlite3

Ou abra o sqlite3 e use o comando:
sqlite> .open minha_base.sqlite3.

E dentro dela, execute o script que criará as tabelas e suas relações:

sqlite> .read script.sql

Após isso, poderá listar as tabelas com o comando .tables e ver a estrutura delas com o .schema.


neomatrix: nesse mesmo projeto falta na descrição abaixo. Desenvolva o script utilizando os comandos CRETE TABLE, Constraint Primary Key e Constraint FOREIGN Key
Luiggifalci: com que programa faço isso? me ajudem, sou iniciante, estou perdido.
naldinhosilvap459wd: Clederson em que programa que eu uso esses códigos?
cledersonbc: Olá, utilize o próprio SQLITE. Para editar o script, qualquer editor serve
pauloo100: ola clederson nesse projeto temos que digita o script e salvar em pdf
pauloo100: não precisa fazer mais nada ?
MAAZIIKOO: to perdido tbm....
Perguntas interessantes