Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Modification des résultats d'une requête

2 réponses
Avatar
Loïc
Bonjour,
J'ai une question bête et méchante à vous poser.
Malgrès avoir pratiqué passablement SQL Server par le passé, je me retrouve
en plein apprentissage avec la version 2000 et je suis confronté à un
problème sans doute très logique mais dont j'ai du mal à comprendre le
principe.

Voici de que quoi il s'agit. Très simplement, j'utilise lors de ma
conception de requête, un projet adp (access XP), ce qui me permet de taper
directement sur une base SQL Server.

Je suis déjà un peu dérouté par le nombre de requête (avec ou sans
paramètre) de vue, etc que ce mode propose.

Lorsque j'exécute une requête SELECT sur une table, je visualise en mode
liste le résultat retourné, jusque là tout va très bien. Je désire modifier
une donnée dans la liste retournée, sans problème je peux modifier cela
(ceci fait afin d'être sur de pouvoir modifier les données depuis mon
interface cliente). Par contre, maintenant je lie une autre table qui
comporte ma foreign key et dès lors je ne peux plus modifier de donnée
quelle qu'il soit, d'ou problème car bien que je ne désire pas modifier dans
la table rajoutée, je dois pouvoir le faire dans ma première table.

Avez vous des idées et suggestions à me faire parvenir.

En vous remerciant d'avance
Loïc

PS j'ai regardé au niveau des contraintes et intégrité, rien ne semble
pouvoir empecher de le faire.
PS2 le message retourné lorsque j'essaie la modification est le suivant : Le
jeu d'enregistrements nécessite un formulaire pour pouvoir être mis à jour.
Je précise que celui-ci n'apparait pas lorsque j'ai une seule table dans ma
requête !!!!!

2 réponses

Avatar
Fred BROUARD
SQL est un langage normalisé et les SGBDR reposent sur une théorie bien établie.
Ce comportement est en l'occurence parfaitement normal.

Pour pouvoirt modifier des données il faut qu'il y ait une unicité de table dans
la requête ou la vue, que la clef soit présente et qu'aucune des colonnes n'ait
subit de transformation.

A lire :
http://sqlpro.developpez.com/SQL_AZ_7b.html#SCHEMA8
http://sqlpro.developpez.com/SQL_AZ_E.html#Insert


A +

--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************


Loïc a écrit:
Bonjour,
J'ai une question bête et méchante à vous poser.
Malgrès avoir pratiqué passablement SQL Server par le passé, je me retrouve
en plein apprentissage avec la version 2000 et je suis confronté à un
problème sans doute très logique mais dont j'ai du mal à comprendre le
principe.

Voici de que quoi il s'agit. Très simplement, j'utilise lors de ma
conception de requête, un projet adp (access XP), ce qui me permet de taper
directement sur une base SQL Server.

Je suis déjà un peu dérouté par le nombre de requête (avec ou sans
paramètre) de vue, etc que ce mode propose.

Lorsque j'exécute une requête SELECT sur une table, je visualise en mode
liste le résultat retourné, jusque là tout va très bien. Je désire modifier
une donnée dans la liste retournée, sans problème je peux modifier cela
(ceci fait afin d'être sur de pouvoir modifier les données depuis mon
interface cliente). Par contre, maintenant je lie une autre table qui
comporte ma foreign key et dès lors je ne peux plus modifier de donnée
quelle qu'il soit, d'ou problème car bien que je ne désire pas modifier dans
la table rajoutée, je dois pouvoir le faire dans ma première table.

Avez vous des idées et suggestions à me faire parvenir.

En vous remerciant d'avance
Loïc

PS j'ai regardé au niveau des contraintes et intégrité, rien ne semble
pouvoir empecher de le faire.
PS2 le message retourné lorsque j'essaie la modification est le suivant : Le
jeu d'enregistrements nécessite un formulaire pour pouvoir être mis à jour.
Je précise que celui-ci n'apparait pas lorsque j'ai une seule table dans ma
requête !!!!!




Avatar
Fred BROUARD
SQL est un langage normalisé et les SGBDR reposent sur une théorie bien établie.
Ce comportement est en l'occurence parfaitement normal.

Pour pouvoirt modifier des données il faut qu'il y ait une unicité de table dans
la requête ou la vue, que la clef soit présente et qu'aucune des colonnes n'ait
subit de transformation.

A lire :
http://sqlpro.developpez.com/SQL_AZ_7b.html#SCHEMA8
http://sqlpro.developpez.com/SQL_AZ_E.html#Insert


A +

--
Frédéric BROUARD, MVP SQL Server. Expert SQL / spécialiste Delphi, web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
************************ www.datasapiens.com *************************


Loïc a écrit:
Bonjour,
J'ai une question bête et méchante à vous poser.
Malgrès avoir pratiqué passablement SQL Server par le passé, je me retrouve
en plein apprentissage avec la version 2000 et je suis confronté à un
problème sans doute très logique mais dont j'ai du mal à comprendre le
principe.

Voici de que quoi il s'agit. Très simplement, j'utilise lors de ma
conception de requête, un projet adp (access XP), ce qui me permet de taper
directement sur une base SQL Server.

Je suis déjà un peu dérouté par le nombre de requête (avec ou sans
paramètre) de vue, etc que ce mode propose.

Lorsque j'exécute une requête SELECT sur une table, je visualise en mode
liste le résultat retourné, jusque là tout va très bien. Je désire modifier
une donnée dans la liste retournée, sans problème je peux modifier cela
(ceci fait afin d'être sur de pouvoir modifier les données depuis mon
interface cliente). Par contre, maintenant je lie une autre table qui
comporte ma foreign key et dès lors je ne peux plus modifier de donnée
quelle qu'il soit, d'ou problème car bien que je ne désire pas modifier dans
la table rajoutée, je dois pouvoir le faire dans ma première table.

Avez vous des idées et suggestions à me faire parvenir.

En vous remerciant d'avance
Loïc

PS j'ai regardé au niveau des contraintes et intégrité, rien ne semble
pouvoir empecher de le faire.
PS2 le message retourné lorsque j'essaie la modification est le suivant : Le
jeu d'enregistrements nécessite un formulaire pour pouvoir être mis à jour.
Je précise que celui-ci n'apparait pas lorsque j'ai une seule table dans ma
requête !!!!!