Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
tonny_tuga

SQL não reconhece o DATE

Recommended Posts

tonny_tuga

Boas,

Tou a desenvolver o meu projecto PAP e utilizei o DBDesigner 4 para a construçao da base de dados, na hora de passar para o SQL (MicroSoft SQL Server 2005), o SQL não reconhece o DATE.

O Script:

CREATE TABLE Tab_Aluno (
  Alu_Numero INTEGER NOT NULL identity(1,1) PRIMARY KEY,
  Tab_HorarioAluno_Hor_ID INTEGER  NOT NULL,
  Tab_EncEdu_Enc_Aluno INTEGER NOT NULL,
  Tab_Notas_Not_ID INTEGER  NOT NULL,
  Tab_HorarioProfessor_Hor2_ID INTEGER NOT NULL,
  Alu_Nome TEXT NULL,
  Alu_BI INTEGER   NULL,
  Alu_Telefone INTEGER   NULL,
  Alu_Email TEXT NULL,
  Alu_NomeFactura TEXT NULL,
  Alu_ContribuinteFactura INTEGER  not NULL);


CREATE TABLE Tab_Bancos (
  Ban_Numero INTEGER NOT NULL identity(1,1) primary key,
  Tab_Professor_Pro_Numero INTEGER   NOT NULL,
  Tab_Professor_Tab_HorarioAluno_Hor_ID INTEGER   NOT NULL,
  Tab_Professor_Tab_HorarioProfessor_Hor2_ID INTEGER   NOT NULL,
  Ban_Nome TEXT NULL);

CREATE TABLE Tab_Disciplinas (
  Dis_ID INTEGER   NOT NULL identity(1,1) primary key,
  Tab_HorarioAluno_Hor_ID INTEGER   NOT NULL,
  Tab_Notas_Not_ID INTEGER   NOT NULL,
  Tab_HorarioProfessor_Hor2_ID INTEGER   NOT NULL,
  Dis_Nome TEXT NULL);
  

CREATE TABLE Tab_EncEdu (
  Enc_Aluno INTEGER   NOT NULL identity(1,1),
  Enc_Nome TEXT NULL,
  Enc_BI INTEGER   NULL,
  Enc_Contribuinte INTEGER   NULL,
  Enc_Morada TEXT NULL,
  Enc_CodigoPostal INTEGER   NULL,
  Enc_Localidade TEXT NULL,
  Enc_Telefone INTEGER   NULL,
  Enc_Email TEXT NULL,
  PRIMARY KEY(Enc_Aluno)
);

CREATE TABLE Tab_Fornecedores (
  For_Numero INTEGER   NOT NULL identity(1,1),
  For_Nome TEXT NULL,
  For_Contribuinte INTEGER   NULL,
  For_Telefone INTEGER   NULL,
  For_Mail TEXT NULL,
  For_NomeVendedor TEXT NULL,
  For_TelefoneVendedor INTEGER   NULL,
  PRIMARY KEY(For_Numero)
);

CREATE TABLE Tab_HorarioAluno (
  Hor_ID INTEGER  primary key NOT NULL identity(1,1),
  Hor_Aluno INTEGER  NULL,
  Hor_Dia DATE NULL,
  Hor_HoraEntrada TIME NULL,
  Hor_HoraSaida TIME NULL,
  Hor_Professor INTEGER   NULL,
  Hor_Disciplina INTEGER   NULL,
  
);

CREATE TABLE Tab_HorarioProfessor (
  Hor2_ID INTEGER   NOT NULL identity(1,1),
  Hor2_Professor INTEGER   NULL,
  Hor2_Dia DATE NULL,
  Hor2_HoraEntrada TIME NULL,
  Hor2_HoraSaida TIME NULL,
  Hor2_Aluno INTEGER   NULL,
  Hor2_Disciplina INTEGER   NULL,
  PRIMARY KEY(Hor2_ID)
);

CREATE TABLE Tab_HorarioSalas (
  Hor3_ID INTEGER   NOT NULL identity(1,1),
  Hor3_Sala INTEGER   NULL,
  Hor3_HoraInicio TIME NULL,
  Hor3_HoraFim TIME NULL,
  Hor3_Dia DATE NULL,
  Hor3_Actividade TEXT NULL,
  PRIMARY KEY(Hor3_ID)
);

CREATE TABLE Tab_Notas (
  Not_ID INTEGER   NOT NULL identity(1,1),
  Not_Aluno INTEGER   NULL,
  Not_Disciplina INTEGER   NULL,
  Not_Nota1Periodo INTEGER   NULL,
  Not_Nota2Periodo INTEGER   NULL,
  Not_Nota3Periodo INTEGER   NULL,
  PRIMARY KEY(Not_ID)
);

CREATE TABLE Tab_Professor (
  Pro_Numero INTEGER   NOT NULL identity(1,1) primary key,
  Tab_HorarioAluno_Hor_ID INTEGER   NOT NULL,
  Tab_HorarioProfessor_Hor2_ID INTEGER   NOT NULL,
  Pro_Nome TEXT NULL,
  Pro_Morada TEXT NULL,
  Pro_Telefone INTEGER   NULL,
  Pro_Email TEXT NULL,
  Pro_InicioColaboracao DATE NULL,
  Pro_FimColaboracao DATE NULL,
  Pro_BI INTEGER   NULL,
  Pro_NIF INTEGER     NULL,
  Pro_NIB INTEGER   NULL,
  Pro_Banco INTEGER   NULL,
  );

CREATE TABLE Tab_Salas (
  Sal_ID INTEGER   NOT NULL identity(1,1),
  Tab_HorarioSalas_Hor3_ID INTEGER   NOT NULL,
  Sal_Nome TEXT NULL,
  PRIMARY KEY(Sal_ID, Tab_HorarioSalas_Hor3_ID));

Quando meto para executar o script da-me o seguinte erro:

Msg 2715, Level 16, State 7, Line 54

Column, parameter, or variable #3: Cannot find data type DATE.

Alguem me pode ajudar?

Share this post


Link to post
Share on other sites
M6

O SQL Server não tem o tipo Date, tens de usar DateTime.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites
tonny_tuga

Ok já encontrei a solução.

É só fazer o upgrade para o SQL Server 2008.

Obrigado a todos :D

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.