The UNIX and Linux Forums  


Go Back   Les systèmes UNIX et Linux Forums > Forums spécial > UNIX et Linux Applications
.
google unix.com



UNIX et Linux Applications Discutez de UNIX et Linux, des applications logicielles. Cela inclut SQL, Bases de données, middleware, MOM, SOA, EDA, CEP, BI, BPM et des sujets similaires.

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
Retourner un tableau de chaînes de caractères définis par l'utilisateur de la fonction de awk user_prady De programmation et de script Shell 2 12-04-2007 12:03 AM
besoin d'aide pour la fonction définie par l'utilisateur user_prady De programmation et de script Shell 11 11-18-2007 08:51 PM
Very Strange Behavior de redirection cahook De programmation et de script Shell 5 08-08-2007 12:32 PM
Nawk fonction définie par l'utilisateur NewbieGirl De programmation et de script Shell 1 06-20-2003 11:51 AM
sed comportement étrange Kevin Pryke UNIX pour les nuls Questions et réponses 5 06-13-2003 05:34 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Recherche sur ce Thread Rate Thread Modes d'affichage
  #1 (permalink)  
Old 04-24-2009
thegeek thegeek is offline
Registered User
  
 

Date d'inscription: avril 2009
Lieu: / usr / bin / vim
Posts: 455
comportement étrange de la fonction définie par l'utilisateur psql

Distincts de la problématique portion, et de montrer à votre avis ici.,

1. Voici la définition de fonction,


Code:
create or replace function new_del(id integer) returns void as $$
begin
    raise info 'dollar :%',$1;
    delete from testing  where id=$1;
    end ;
$$
language 'plpgsql';

2. Voici le tableau de «testing» contient,

Code:
SELECT * from testing ;
 id
-----
 101
 102
 103
(3 rows)


3. Quand je l'appelle la fonction en tant

Code:
SELECT new_del('101');
INFO:  dollar :101
 new_del
---------

(1 row)

Il supprime toutes les lignes! Pourquoi est-il fait comme ça!

4. Mais lorsque je change le nom de l'argument alors la fonction se comporte normalement.

J'ai changé le nom d'argument "id" à id_field il s'est comporté normalement et efface uniquement la ligne indiquée.


Toute aide est appréciée.
  #2 (permalink)  
Old 04-28-2009
thegeek thegeek is offline
Registered User
  
 

Date d'inscription: avril 2009
Lieu: / usr / bin / vim
Posts: 455
Mon ami a aussi essayé de trouver la solution, et l'a trouvé.

C'est,
Où que l'argument se produit, elle est remplacée par la valeur en dollars. C'est "id" est remplacé par «$ 1» dans la requête de sorte que la requête est,

Code:
delete from testing where $1 = $1

Ainsi, il supprime toutes les lignes spécifiées.
Merci pour toutes les personnes qui ont essayé de trouver le problème.
Closed Thread

Bookmarks

Thread Tools Recherche sur ce Thread
Recherche sur ce Thread:

Recherche avancée
Modes d'affichage Rate this thread
Rate this thread:

Règles de messages
Tu mai pas de nouvelles discussions: nonoui
Tu mai pas envoyer des réponses:
Tu mai pas envoyer des pièces jointes
Tu mai pas modifier vos messages

BB code est Sur
Smilies sont Sur
[IMG] code est Sur
Le code HTML est Hors tension
Trackbacks sont Sur
Pingbacks sont Sur
Refbacks sont Sur




Toutes les heures sont au format GMT -4. Le temps est maintenant 10:10 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traductions Langue Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Les systèmes UNIX et Linux Forums Content Copyright © 1993-2009. Tous droits Reserved.Ad de gestion par RedTyger

Content Relevant URLs par vBSEO 3.2.0