Você está na página 1de 3

Criando tabelas via SQL.

Vamos criar via SQL as tabelas utilizadas no primeiro artigo de Desvendando o Crystal Reports S para lembrar a estrutura das tabelas dada a seguir: TblAlunos
codaluno nome endereco telefone nascimento nomepai nomemae Periodo serie numero sexo ativo observacao

TblCursos

TblNotas

TblProfessor

codaluno codcurso codcurso nomecurso nota codprofessor ano creditos bimestre Observacao

codprofessor nome endereco telefone nascimento sexo observacao ativo

Obs : Codaluno , Codcurso, CodProfessor so chaves primrias de suas respectivas tabelas. Para exercitar iremos definir os relacionamentos entre as tabelas da seguinte forma (figura 1.0 abaixo):

figura 1.0 A tabela tblprofessor pode ser definida como a seguir (Access SQL) :
CREATE TABLE tblprofessor (codprofessor INTEGER CONSTRAINT primarykey PRIMARY KEY, nome TEXT (50), endereco TEXT (50) telefone TEXT (15), nascimento DATE, sexo TEXT (1), ativo BIT, observacao TEX T (100));

A instruo CREATE TABLE ir criar a tabela tblprofessor, com as definies da lista de campos entre parnteses, separados um dos outros por vrgulas. Cada descrio de campo possui duas partes: o nome do campo e o tipo de dados os quais so separados por um espao entre si. A clusula CONSTRAINT utilizada para definir a chave primria codprofessor, ela defina as caractersticas das colunas ou ndices em uma tabela. Pode ser usada para definir uma chave primria ou para estabelecer um relacionamento entre duas tabelas. Para criar a tabela no VB execute a instruo CREATE TABLE passando-a como parmetro do mtodo Execute do objeto Database. Ex: db.Execute ("CREATE TABLE...") Os nomes dos tipos de dados utilizados pelo JET no so iguais aos nomes exigidos pelas instrues SQL. Veja na tabela a abaixo a correspondncia entre ambos: Tipos de Dados SQL
BIT BYTE COUNTER CURRENCY DATETIME SINGLE DOUBLE SHORT LONG LONGTEXT LONGBINARY TEXT

Tipos de dados do JET


YES/NO NUMERIC - BYTE COUNTER Contador CURRENCY - Moeda DATE/TIME NUMERIC - SINGLE NUMERIC - DOUBLE NUMERIC - INTEGER NUMERIC - LONG MEMO OLE OBJECTS TEXT

A tabela TblCursos ser criada pela instruo:


CREATE TABLE tblcursos (codcurso INTEGER CONSTRAINT primarykey PRIMARY KEY, nomecurso TEXT (15), codprofessor INTEGER CONSTRAINT tblprofessorFK REFERENCES tblprofessor);

A clusula CONSTRAINT utilizada para definir uma chave primria e uma chave externa. Note que existe uma relao de um para muitos entre a tabela TblProfessor e a tabela TblCursos, sendo que a coluna codprofessor da tabela TblCursos, uma chave estrangeira (Foreign Key - FK ) Bem vejamos como criar as demais tabelas: A tabela TblNotas
CREATE TABLE tblNotas

(codaluno INTEGER CONSTRAINT tblalunosFK REFERENCES tblalunos, Codcurso INTEGER CONSTRAINT tblcursosFK REFERENCES tblcursos, Nota INTEGER, Ano TEXT (4), Bimestre INTEGER);

A tabela Tblalunos
CREATE TABLE tblalunos (codaluno INTEGER CONSTRAINT primarykey PRIMARY KEY, nome TEXT (50), endereco TEXT (50) telefone TEXT (15), nascimento DATE, nomepai TEXT (50), nomemae TEXT (50), periodo TEXT (1), serie TEXT (10), numero TEXT (5), observacao TEXT (100), sexo TEXT (1), ativo BIT);

O cdigo usado acima refere-se ao SQL-Access, havendo diferenas quando escrito para o ORACLE , SQL SERVER , SYBASE, etc. Contedo

Retorna

Você também pode gostar