Pour les pros du PL/SQL

Fermé
steelspirit Messages postés 277 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 22 octobre 2008 - 1 juil. 2003 à 12:25
steelspirit Messages postés 277 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 22 octobre 2008 - 1 juil. 2003 à 13:45
bonjour à tous et bonne appétit !
j'ai une table sous postgreSQL du style :

table employe
------------------
ref_emp | Integer
ref_agence | Integer
nom | character varying

j'ai un probleme quand j'insère un tuple où ref_agence est vide :
insert into employe values (1,' ','toto');
postgreSQL me fait l'erreur : ERROR: pg_atoi: zero-length string

Y aurai t'il moyen de créer un trigger qui remplace les ' ' par 0 ?
Voyez vous une autre solution pour insérer une ref_agence vide ?

Merci d'avance pour votre aide

- T'as pas vu Chloraine ?
- C'est qui Chloraine ? - Ah ! Ah ! Ah !

2 réponses

Hello,

Essaye en mettant le mot NULL directement à la place de tes apostrophes (donc sans apostrophes autour ;-) )

A plus
0
steelspirit Messages postés 277 Date d'inscription lundi 12 mai 2003 Statut Membre Dernière intervention 22 octobre 2008 80
1 juil. 2003 à 13:45
merci pour ton aide ian mais ce n'est pas ce que je souhaite faire :

mes requetes insert sont créer à partir de formulaires avec du perl.
quand un utilisateur laisse un champ vide dans un des formulaires ma requete va etre par exemple insert into employe values (1,$ref_agence,'toto'); avec $ref_agence qui est vide ! dc si je veux que $ref_agence soit égal à NULL il faut que je fasse avant le insert :
if ($ref_agence eq "") {$ref_agence='NULL';}

seulement j'ai 400 scripts aux moins qui contiennent des insert et des updates
donc je me suis dis au lieu de retoucher à tout les scripts pourquoi ne pas faire un controle directement au niveau de la base sur la table employe !

Quelqu'un aurait il une idée ?

- T'as pas vu Chloraine ?
- C'est qui Chloraine ? - Ah ! Ah ! Ah !
0