Type de donnée, d'un select à un insert.
Bonjour,
j'essaye d'utiliser le champ RDB$DB_KEY, et le champ retourné par la fonction HASH.
Dans une procédure, je récupère ces valeurs, et les insert dans une autre table... hélas, cela ne fonctionne pas correctement j'ai l'impression... :oops:
voilà le test que j'ai fais:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
CREATE TABLE TEST (
HASH_CODE DOUBLE PRECISION,
RDB_DB_KEY CHAR(8)
);
SET TERM !!;
CREATE PROCEDURE PROC_TEST
AS
DECLARE VARIABLE HASH_CODE DOUBLE PRECISION;
DECLARE VARIABLE RDB_DB_KEY CHAR(8);
BEGIN
EXECUTE STATEMENT 'SELECT HASH(''essai''), RDB$DB_KEY FROM RDB$DATABASE' INTO HASH_CODE, RDB_DB_KEY;
INSERT INTO TEST (HASH_CODE, RDB_DB_KEY) VALUES ( :HASH_CODE, :RDB_DB_KEY );
END!! |
pour le HASH_CODE, cela semble correcte, bien que dans mon code, je me retrouvais avec des e+18, quand je mettais sa dans ma table trace.
pour le DB_KEY, je me retrouve à priori avec un caractère, un carré.
Il n'y aurait pas un problème de CAST ou de type ??
Merci d'avance... :roll: