Rechercher : dans
Par :

[SQL]Requête update

Dernière réponse le 17 aoû 2005 à 01:33:52 Bialo, le 12 aoû 2005 à 09:27:25 
 Signaler ce message aux modérateurs

Bonjour à tous

J'ai un gros problème et je ne comprend pas pourquoi?

Je développe une appli web en java et j'ai besoin d'exécuter des requêtes d'update afin de mettre à jour mes tables.

Certaines requêtes devraient me permettre de mettre à jour plusieurs lignes de ma table en même temps mais lors de l'exécution des ces requêtes, le message suivant apparaît :

Erreur: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]La sous-requête a retourné plusieurs valeurs. Cela n'est pas autorisé quand la sous-requête suit =, !=, <, <= , >, >= ou quand elle est utilisée en tant qu'expression.

Si quelqu'un peut m'aider SVP.

Merci d'avance.

Meilleures réponses pour « [SQL]Requête update » dans :
SQL - éviter les doublons dans un SELECT VoirProblème Comment éviter les doublons dans les résultats d'une requête SQL ? Solution Il suffit d'utiliser la clause DISTINCT entre SELECT et les champs. Exemple : SELECT distinct id,nom,prenom FROM matable Plus d'informations ...
Le langage SQL VoirQu'appelle-t-on SQL? SQL (Structured Query Language, traduisez Langage de requêtes structuré) est un langage de définition de données (LDD, ou en anglais DDL Data Definition Language), un langage de manipulation de données (LMD, ou en anglais DML,...
SQL - Sous-requêtes VoirExpression des sous-requêtes Effectuer une sous-requête consiste à effectuer une requête à l'intérieur d'une autre, ou en d'autres termes d'utiliser une requête afin d'en réaliser une autre (on entend parfois le terme de requêtes en...
SQL - Création de table VoirLe SQL, comportant un langage de définition de données (LDD), permet de créer des tables. Pour cela, il utilise le couple de mots clés CREATE TABLE. La création de tables Le création de tables se fait à l'aide du couple de mots-clés CREATE...

1

shaiulud, le 12 aoû 2005 à 09:39:10

Pas de solution mais je te conseille de tracer les requetes qui te posent problème et de les exécutées avec le client sql (query analyser).

Répondre à shaiulud

2

deus, le 12 aoû 2005 à 11:18:26

Visiblement c’est dû au fait que ta requete imbriquée retourne plusieurs valeurs alors qu’elle ne devrait en retourner qu’une.
Je connais pas tes requetes mais essaie éventuellement d’ajouter un « TOP 1 » à ta sous-requete.
Enfin la je parle un peu en aveugle ce serait plus pratique que tu nous montre tes requetes.


What Jesus can't fix tonight,
The Whisky certainly might.

Répondre à deus

3

Bialo, le 12 aoû 2005 à 11:22:07
  • +1

Ma requête est la suivante :

UPDATE pt_detail SET ACTIF=0, USER_DERN_MODIF='MOI' WHERE ID_POSTE='4'

Répondre à Bialo

4

 grandkoudou, le 17 aoû 2005 à 01:33:52

Euuhhhh, ACTIF est bien un INTEGER dans la table pt_detail ?
et ID_POSTE est un string ?

Répondre à grandkoudou