Fórum Erro na Criação de Stored Procedure!!! #37545

23/07/2003

0

Manus,
Estou precisando de uma ajuda ´urgente´...

Estou desenvolvendo um projeto para o meu trabalho de conclusão de curso na faculdade, e ao criar uma stored procedure de insert no interbase 6, esta dando a seguinte mensagem.

***********************Sintax*********************************
CREATE PROCEDURE INSERT_HORARIO (CODIGO INTEGER,HORAINI TIME, HORAFIM TIME, PRECO NUMERIC(10, 2)) AS
BEGIN
INSERT INTO CADHORARIO VALUES (:CODIGO,:HORAINI,:HORAFIM,:PRECO);
END


***********************Erro*********************************
´CLIENTE SQL DIALECT 1 DOES NOT SUPPORT REFERENCE TO TIME DATATYPE´
************************************************************
Ja tentei mudar a configuração regional de meu pc e não consegui obter sucesso.

Ficarei Grato com quem me ajudar.


Grato,
Fernando Di Tomazzo


Ditomazzo

Ditomazzo

Responder

Posts

23/07/2003

Afarias

Vc está usando o banco no dialeto 1. Este dialeto não suporta o tipo TIME. Vc tem q usar o tipo TIMESTAMP (ou ir para o dialeto 3)


T+


Responder

Gostei + 0

23/07/2003

Ditomazzo

Como eu Faço para ir ao Dialeto 3.



Grato,
Fernando di Tomazzo


Responder

Gostei + 0

23/07/2003

Afarias

quando criar o banco de dados especifíque o dialeto 3 (se já não é).

quando conectar com o banco de dados, informe q o ´cliente´ deve usar o dialeto 3 (se usar IBX é só colocar a propriedade SQLDialect=3).


T+


Responder

Gostei + 0

23/07/2003

Ditomazzo

Valeu.....


Responder

Gostei + 0

24/07/2003

Ditomazzo

Kra´s,
Conforme o email anterior fiz o que foi solicitado.
Dentro das propriedades do meu banco de dados ha uma propriedade chamada de DATABASE DIALECT, e la o numero do dialect eu alterei para 3, não consegui encontrar a propridade conforme foi explicado, ao tentar rodar a minha stored procedure a mesma deu o mesmo erro.
As minhas questões são as seguintes:

1 - Está certo do jeito que eu alterei o Dialect???
2 - Se não como faço pra mudar???

Estou precisando disso urgente.

Grato à todos que estão me ajudando e que por ventura irão me ajudar.


Ditomazzo


Responder

Gostei + 0

24/07/2003

Afarias

|Dentro das propriedades do meu banco de dados ha uma propriedade
|chamada de DATABASE DIALECT, e la o numero do dialect eu alterei
|para 3,

Onde?? Como fez isso??


|não consegui encontrar a propridade conforme foi explicado, ao tentar
|rodar a minha stored procedure a mesma deu o mesmo erro.

Onde está tentando rodar a procedure?? No IBConsole? no ISQL? num programinha em Delphi?? Que componentes está usando (IBX, BDE, etc)???


|1 - Está certo do jeito que eu alterei o Dialect???

Não sei. Explique melhor o q vc fez e q ferramenta usou.


T+


Responder

Gostei + 0

24/07/2003

Ditomazzo

Estou tentando rodar a procedure no SQL EXPLORER, estou usando interbase 6 e o Delphi 6..
Não estou rodando em nenhum programa, estou criando as procedures primeiro no dentro do banco, pra depois executa-las dentro do banco.

Ja consegui criar várias procedures de insert update e Delete, mas quando eu vou mexer com data e Hora da esse erro.


Dentro do IB na raiz do meu banco, eu cliquei com o botão direito e fui em propriedades, e la dentro tem uma propriedade chamada de database dialect e esta setada como 3... Isso está correto??? É la mesmo que eu mudo ou tem outro lugar???

Espero ter explicado direito.
Qualquer coisa me passe um email.
Fernando_tomazzo@datasulsp.com.br



Obrigado pela ajuda.


Responder

Gostei + 0

24/07/2003

Afarias

|Estou tentando rodar a procedure no SQL EXPLORER, estou usando
|interbase 6 e o Delphi 6..

o SQL Explorer utiliza o BDE, sendo assim utiliza (por padrão) o Dialeto 1... Eu já postei aqui neste fórum uma explicação de como fazer o BDE usar o Dialeto 3 (faça uma buaca no fórum)

Entretanto, sugiro q use uma ferramenta mais adequada, como o IBConsole que vem com o Interbase.


|Ja consegui criar várias procedures de insert update e Delete, mas
|quando eu vou mexer com data e Hora da esse erro.

Como disse antes, o problema está no tipo TIME (que não é suportado no dialeto 1) ... se quizer realmente utilizar o dialeto 1, mude o tipo para TIMESTAMP.


|Dentro do IB na raiz do meu banco, eu cliquei com o botão direito e fui
|em propriedades, e la dentro tem uma propriedade chamada de
|database dialect e esta setada como 3... Isso está correto???

Dentro do IB??? Acho q vc está se referindo ao IBConsole (que não é o IB, más apenas uma ferramenta)

Lá vc informa o Dialeto usando pelo IBConsole quando conectar no banco.
O Dialeto do banco (arquivo gdb) é definido na sua criação. Se criado por um cliente conectado com dialeto 1 é 1, se 3 é 3.

Depois de criado, acho q só é possível alterálo com uma ferramenta de ´manutenção´ -- como o GFIX


|É la mesmo que eu mudo ou tem outro lugar???

Faça assim: Crie um novo banco com pelo IB Console -- certifíque-se de que a propriedade q vc falou esteja em 3 -- e então, no IB Console, rode seu script de criação de tabelas, sps, etc...

Se for criar um programa em Delphi para acessar este banco, lêmbre-se q se for usar BDE tem q alterar as configurações (como falei antes) .. más, aconselho que use o IBX.


T+


Responder

Gostei + 0

25/07/2003

Ditomazzo

Manu,
Ja dei uma vasculhada no forum e não consegui encontrar, vc tem alguma dica..
Qual o titulo da mensagem???
Se puder me mandar por email eu agradeço.

fernando_tomazzo@datasulsp.com.br



Obrigado por ter me ajudado.

Ditomazzo


Responder

Gostei + 0

25/07/2003

Afarias

Ai está o link:

http://200.196.51.150/forum/viewtopic.php?t=9055&highlight=


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar