Repare que eu não criei nada semelhante ao auto increment, porque no oracle 11 (na sua tag) dá um pouco mais de trabalho.
Procure como usar Sequences em oracle pra aprender como fazer.
T
ThamaraLeao
agora foi sem o auto increment, obrigada ^^
vou tenta criar o resto da tabela agora
R
rodriguesabner
Seja bem vinda ao fórum, por gentileza, evitar postar links no fórum. A menos que seja codepen e similares.
Se for alguma coisa visual, enviar imagem.
Se for código, enviar o código.
Link de projeto, apenas do github, assim todos ficam seguros.
T
ThamaraLeao
ok, obrigada pela informacao
T
ThamaraLeao
ser alguem pode me ajuda, e explica grata ficarei
Erro a partir da linha : 19 no comando -
CREATE TABLE Classe
(
Cd_Classe int(8) not null,
Nr_AnoLetivo int(4) not null,
Nr_Serie int(2) not null,
Sg_Turma varchar(2) not null,
Cd_Escola int(6) not null,
Cd_Grau int(2) not null,
Cd_Periodo int(2) not null,
PRIMARY KEY(Cd_Classe),
)
Relatório de erros -
ORA-00907: parêntese direito não encontrado
00907. 00000 - “missing right parenthesis”
*Cause:
*Action:
P
pmlm
Tens uma virgula a mais. A ultima instrução não pode levar virgula.
T
ThamaraLeao
Continuaste o mesmo erro amigo
Erroapartirdalinha:19nocomando-CREATETABLEClasse(Cd_Classeint(8)notnull,Nr_AnoLetivoint(4)notnull,Nr_Serieint(2)notnull,Sg_Turmavarchar(2)notnull,Cd_Escolaint(6)notnull,Cd_Grauint(2)notnull,Cd_Periodoint(2)notnull,PRIMARYKEY(Cd_Classe));Relatóriodeerros-ORA-00907:parêntesedireitonãoencontrado00907.00000-"missing right parenthesis"*Cause:*Action:
H
hugokotsubo
O problema é o int(4), int(2), etc. Em Oracle o tipo para números inteiros é simplesmente integer ou int (sem nada depois). Assim funciona:
Como já dito, você também pode usar int (sem nada depois), como por exemplo Cd_Classe int not null, que funciona da mesma forma (como aliás foi feito no link indicado em uma das respostas acima).
Mas se quiser definir a precisão de cada número, aí você tem que usar o tipo number:
Aliás, como dica geral - que garanto que vai te ajudar muito no médio e longo prazo - sempre consulte a documentação antes de sair “tentando coisas aleatoriamente” (que não sei se foi o caso, mas lendo o tópico, passou a impressão de que foi mais ou menos isso)
T
ThamaraLeao
Estou seguindo o modelo que o prof me perdiu, que eu aprendi diz que tem que coloca os numeros que prof passou
H
hugokotsubo
Mas ele usou Oracle mesmo? Eu testei no Oracle 11g (do http://sqlfiddle.com/), e nessa versão, int não tem a precisão, somente number.
int(2), int(6), etc funciona em outros bancos (MySQL. SQLite), verifique qual foi que ele usou.