La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie, dbo.produits.id_sous_famille,
dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille > dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description > dbo.produits.id_description ON dbo.ndxlibelle.id_lib = dbo.produits.id_lib
ON
dbo.sous_famille.id_sous_famille > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix = dbo.produits.id_prix
Bon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
une vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix = 37.9900,
nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires', dispo
aulieude = 125, origine = 'False', vignette = 'v_vide', photo = 'p_vide',
extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie, dbo.produits.id_sous_famille,
dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille > dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description > dbo.produits.id_description ON dbo.ndxlibelle.id_lib = dbo.produits.id_lib
ON
dbo.sous_famille.id_sous_famille > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix = dbo.produits.id_prix
Bon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
une vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix = 37.9900,
nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires', dispo
aulieude = 125, origine = 'False', vignette = 'v_vide', photo = 'p_vide',
extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie, dbo.produits.id_sous_famille,
dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille > dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description > dbo.produits.id_description ON dbo.ndxlibelle.id_lib = dbo.produits.id_lib
ON
dbo.sous_famille.id_sous_famille > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix = dbo.produits.id_prix
Bon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
une vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix = 37.9900,
nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires', dispo
aulieude = 125, origine = 'False', vignette = 'v_vide', photo = 'p_vide',
extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie, dbo.produits.id_sous_famille,
dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille > dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description > dbo.produits.id_description ON dbo.ndxlibelle.id_lib = dbo.produits.id_lib
ON
dbo.sous_famille.id_sous_famille > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix = dbo.produits.id_prix
Bon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai créé
une vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi l'update
!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix = 37.9900,
nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires', dispo > '24h',
aulieude = 125, origine = 'False', vignette = 'v_vide', photo = 'p_vide',
extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie, dbo.produits.id_sous_famille,
dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille > dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description > dbo.produits.id_description ON dbo.ndxlibelle.id_lib = dbo.produits.id_lib
ON
dbo.sous_famille.id_sous_famille > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix = dbo.produits.id_prix
Bon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai créé
une vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi l'update
!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix = 37.9900,
nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires', dispo > '24h',
aulieude = 125, origine = 'False', vignette = 'v_vide', photo = 'p_vide',
extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie, dbo.produits.id_sous_famille,
dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille > dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description > dbo.produits.id_description ON dbo.ndxlibelle.id_lib = dbo.produits.id_lib
ON
dbo.sous_famille.id_sous_famille > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix = dbo.produits.id_prix
Bon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai créé
une vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi l'update
!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix = 37.9900,
nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires', dispo > '24h',
aulieude = 125, origine = 'False', vignette = 'v_vide', photo = 'p_vide',
extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
SQL est un langage et qui plus est normatif.
Les vues peuvent êtres mises à jours, uniquement dans le cas de vues
les conditions suivantes :
1) ne porter que sur une seule table
1) ne pas contenir de fonction d'agrégation dans la liste de sélection
2) ne pas contenir TOP ou DISTINCT dans la clause SELECT
3) ne pas employer les clauses GROUP BY ou UNION
4) ne pas utiliser de colonne dérivée dans la liste de sélection.
Autrement dit : le SGBDR doit pouvoir retrouver ses petits, c'est à dire
lignes à mettre à jour. Or en présence de tables multiple il ne peut
quelle table appartient telle ou telle colonne.
A +
jpgr a écrit:
> La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
> modification affecte les tables de base multiples.
>
> SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
> dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
> dbo.ndxdescription.libDescription,
> dbo.ndxprix.libPrix, dbo.produits.aulieude,
> dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
> dbo.produits.origine,
> dbo.produits.dispo, dbo.produits.photo,
> dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
> dbo.produits.select_produit,
> dbo.produits.garantie,
> dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
> dbo.produits.enCmd,
> dbo.produits.id_prix, dbo.produits.id_lib,
> dbo.produits.id_description
> FROM dbo.ndxprix INNER JOIN
> dbo.famille INNER JOIN
> dbo.sous_famille ON dbo.famille.id_famille > > dbo.sous_famille.id_famille INNER JOIN
> dbo.ndxlibelle INNER JOIN
> dbo.ndxdescription INNER JOIN
> dbo.produits ON dbo.ndxdescription.id_description
> ON
> dbo.sous_famille.id_sous_famille > > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix dbo.produits.id_prix
>
> Bon !
>
> c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
> une vue !)
> sous access tout fonctionne bien mais avec mssql2000 non !
> j'avais meme un ORDER BY dbo.famille.nom_famille,
> dbo.sous_famille.nom_sous_famille
> mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
> !
>
> voici mon ordre d'update
>
> UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
> Compatible',
> libDescription = 'C'est super top . Tip top quoi !', libPrix 37.9900,
> nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
> refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires',
> aulieude = 125, origine = 'False', vignette = 'v_vide', photo 'p_vide',
> extention = 'jpg',
> enligne = 'True', garantie = '6',
> qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
> id_produit= 14
>
> je suis en asp.net
>
> merci de me donner une piste parceque la je pete un cable
>
>
--
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 *************************
SQL est un langage et qui plus est normatif.
Les vues peuvent êtres mises à jours, uniquement dans le cas de vues
les conditions suivantes :
1) ne porter que sur une seule table
1) ne pas contenir de fonction d'agrégation dans la liste de sélection
2) ne pas contenir TOP ou DISTINCT dans la clause SELECT
3) ne pas employer les clauses GROUP BY ou UNION
4) ne pas utiliser de colonne dérivée dans la liste de sélection.
Autrement dit : le SGBDR doit pouvoir retrouver ses petits, c'est à dire
lignes à mettre à jour. Or en présence de tables multiple il ne peut
quelle table appartient telle ou telle colonne.
A +
jpgr a écrit:
> La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
> modification affecte les tables de base multiples.
>
> SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
> dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
> dbo.ndxdescription.libDescription,
> dbo.ndxprix.libPrix, dbo.produits.aulieude,
> dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
> dbo.produits.origine,
> dbo.produits.dispo, dbo.produits.photo,
> dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
> dbo.produits.select_produit,
> dbo.produits.garantie,
> dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
> dbo.produits.enCmd,
> dbo.produits.id_prix, dbo.produits.id_lib,
> dbo.produits.id_description
> FROM dbo.ndxprix INNER JOIN
> dbo.famille INNER JOIN
> dbo.sous_famille ON dbo.famille.id_famille > > dbo.sous_famille.id_famille INNER JOIN
> dbo.ndxlibelle INNER JOIN
> dbo.ndxdescription INNER JOIN
> dbo.produits ON dbo.ndxdescription.id_description
> ON
> dbo.sous_famille.id_sous_famille > > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix dbo.produits.id_prix
>
> Bon !
>
> c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
> une vue !)
> sous access tout fonctionne bien mais avec mssql2000 non !
> j'avais meme un ORDER BY dbo.famille.nom_famille,
> dbo.sous_famille.nom_sous_famille
> mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
> !
>
> voici mon ordre d'update
>
> UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
> Compatible',
> libDescription = 'C'est super top . Tip top quoi !', libPrix 37.9900,
> nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
> refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires',
> aulieude = 125, origine = 'False', vignette = 'v_vide', photo 'p_vide',
> extention = 'jpg',
> enligne = 'True', garantie = '6',
> qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
> id_produit= 14
>
> je suis en asp.net
>
> merci de me donner une piste parceque la je pete un cable
>
>
--
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 *************************
SQL est un langage et qui plus est normatif.
Les vues peuvent êtres mises à jours, uniquement dans le cas de vues
les conditions suivantes :
1) ne porter que sur une seule table
1) ne pas contenir de fonction d'agrégation dans la liste de sélection
2) ne pas contenir TOP ou DISTINCT dans la clause SELECT
3) ne pas employer les clauses GROUP BY ou UNION
4) ne pas utiliser de colonne dérivée dans la liste de sélection.
Autrement dit : le SGBDR doit pouvoir retrouver ses petits, c'est à dire
lignes à mettre à jour. Or en présence de tables multiple il ne peut
quelle table appartient telle ou telle colonne.
A +
jpgr a écrit:
> La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
> modification affecte les tables de base multiples.
>
> SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
> dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
> dbo.ndxdescription.libDescription,
> dbo.ndxprix.libPrix, dbo.produits.aulieude,
> dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
> dbo.produits.origine,
> dbo.produits.dispo, dbo.produits.photo,
> dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
> dbo.produits.select_produit,
> dbo.produits.garantie,
> dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
> dbo.produits.enCmd,
> dbo.produits.id_prix, dbo.produits.id_lib,
> dbo.produits.id_description
> FROM dbo.ndxprix INNER JOIN
> dbo.famille INNER JOIN
> dbo.sous_famille ON dbo.famille.id_famille > > dbo.sous_famille.id_famille INNER JOIN
> dbo.ndxlibelle INNER JOIN
> dbo.ndxdescription INNER JOIN
> dbo.produits ON dbo.ndxdescription.id_description
> ON
> dbo.sous_famille.id_sous_famille > > dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix dbo.produits.id_prix
>
> Bon !
>
> c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
> une vue !)
> sous access tout fonctionne bien mais avec mssql2000 non !
> j'avais meme un ORDER BY dbo.famille.nom_famille,
> dbo.sous_famille.nom_sous_famille
> mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
> !
>
> voici mon ordre d'update
>
> UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
> Compatible',
> libDescription = 'C'est super top . Tip top quoi !', libPrix 37.9900,
> nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
> refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires',
> aulieude = 125, origine = 'False', vignette = 'v_vide', photo 'p_vide',
> extention = 'jpg',
> enligne = 'True', garantie = '6',
> qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
> id_produit= 14
>
> je suis en asp.net
>
> merci de me donner une piste parceque la je pete un cable
>
>
--
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 *************************
Merci pour vos remarques
juste que c'est rageant car le même programme marche avec access
"Or en présence de tables multiple il ne peut savoir a quelle table
appartient telle ou telle colonne."
Ok mais notez que lors de la création de la vue "il" possède ses infos...
puisque la vue fonctionne bien !
ou alors il suffirait de rajouter nomTable.ColonneMiseAJour : mais ça c'est
une autre histoire non ?
merci quand même
il faut que je trouve une solution contournant ce problème
"Fred BROUARD" a écrit dans le message de news:SQL est un langage et qui plus est normatif.
Les vues peuvent êtres mises à jours, uniquement dans le cas de vues
respectantles conditions suivantes :
1) ne porter que sur une seule table
1) ne pas contenir de fonction d'agrégation dans la liste de sélection
2) ne pas contenir TOP ou DISTINCT dans la clause SELECT
3) ne pas employer les clauses GROUP BY ou UNION
4) ne pas utiliser de colonne dérivée dans la liste de sélection.
Autrement dit : le SGBDR doit pouvoir retrouver ses petits, c'est à dire
leslignes à mettre à jour. Or en présence de tables multiple il ne peut
savoir aquelle table appartient telle ou telle colonne.
A +
jpgr a écrit:La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie,
dbo.produits.id_sous_famille,dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille >>>dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description
>dbo.produits.id_description ON dbo.ndxlibelle.id_lib >
dbo.produits.id_libON
dbo.sous_famille.id_sous_famille >>>dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix >
dbo.produits.id_prixBon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
crééune vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
l'update!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix >
37.9900,nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires',
dispo >'24h',
aulieude = 125, origine = 'False', vignette = 'v_vide', photo >
'p_vide',extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
--
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 *************************
Merci pour vos remarques
juste que c'est rageant car le même programme marche avec access
"Or en présence de tables multiple il ne peut savoir a quelle table
appartient telle ou telle colonne."
Ok mais notez que lors de la création de la vue "il" possède ses infos...
puisque la vue fonctionne bien !
ou alors il suffirait de rajouter nomTable.ColonneMiseAJour : mais ça c'est
une autre histoire non ?
merci quand même
il faut que je trouve une solution contournant ce problème
"Fred BROUARD" <brouardf@club-internet.fr> a écrit dans le message de news:
OKim5RJqEHA.3464@tk2msftngp13.phx.gbl...
SQL est un langage et qui plus est normatif.
Les vues peuvent êtres mises à jours, uniquement dans le cas de vues
respectant
les conditions suivantes :
1) ne porter que sur une seule table
1) ne pas contenir de fonction d'agrégation dans la liste de sélection
2) ne pas contenir TOP ou DISTINCT dans la clause SELECT
3) ne pas employer les clauses GROUP BY ou UNION
4) ne pas utiliser de colonne dérivée dans la liste de sélection.
Autrement dit : le SGBDR doit pouvoir retrouver ses petits, c'est à dire
les
lignes à mettre à jour. Or en présence de tables multiple il ne peut
savoir a
quelle table appartient telle ou telle colonne.
A +
jpgr a écrit:
La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie,
dbo.produits.id_sous_famille,
dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille >>>dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description
>
dbo.produits.id_description ON dbo.ndxlibelle.id_lib >
dbo.produits.id_lib
ON
dbo.sous_famille.id_sous_famille >>>dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix >
dbo.produits.id_prix
Bon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
créé
une vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
l'update
!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix >
37.9900,
nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires',
dispo >
'24h',
aulieude = 125, origine = 'False', vignette = 'v_vide', photo >
'p_vide',
extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
--
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 *************************
Merci pour vos remarques
juste que c'est rageant car le même programme marche avec access
"Or en présence de tables multiple il ne peut savoir a quelle table
appartient telle ou telle colonne."
Ok mais notez que lors de la création de la vue "il" possède ses infos...
puisque la vue fonctionne bien !
ou alors il suffirait de rajouter nomTable.ColonneMiseAJour : mais ça c'est
une autre histoire non ?
merci quand même
il faut que je trouve une solution contournant ce problème
"Fred BROUARD" a écrit dans le message de news:SQL est un langage et qui plus est normatif.
Les vues peuvent êtres mises à jours, uniquement dans le cas de vues
respectantles conditions suivantes :
1) ne porter que sur une seule table
1) ne pas contenir de fonction d'agrégation dans la liste de sélection
2) ne pas contenir TOP ou DISTINCT dans la clause SELECT
3) ne pas employer les clauses GROUP BY ou UNION
4) ne pas utiliser de colonne dérivée dans la liste de sélection.
Autrement dit : le SGBDR doit pouvoir retrouver ses petits, c'est à dire
leslignes à mettre à jour. Or en présence de tables multiple il ne peut
savoir aquelle table appartient telle ou telle colonne.
A +
jpgr a écrit:La vue ou la fonction 'R_produits' ne peut pas être mise à jour car la
modification affecte les tables de base multiples.
SELECT dbo.produits.id_produit, dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille, dbo.ndxlibelle.libProduit,
dbo.ndxdescription.libDescription,
dbo.ndxprix.libPrix, dbo.produits.aulieude,
dbo.produits.reforigine, dbo.produits.refSaari, dbo.produits.texteplus,
dbo.produits.origine,
dbo.produits.dispo, dbo.produits.photo,
dbo.produits.vignette, dbo.produits.extention, dbo.produits.enligne,
dbo.produits.select_produit,
dbo.produits.garantie,
dbo.produits.id_sous_famille,dbo.produits.qteStock, dbo.produits.seuilCmd, dbo.produits.stokMax,
dbo.produits.enCmd,
dbo.produits.id_prix, dbo.produits.id_lib,
dbo.produits.id_description
FROM dbo.ndxprix INNER JOIN
dbo.famille INNER JOIN
dbo.sous_famille ON dbo.famille.id_famille >>>dbo.sous_famille.id_famille INNER JOIN
dbo.ndxlibelle INNER JOIN
dbo.ndxdescription INNER JOIN
dbo.produits ON dbo.ndxdescription.id_description
>dbo.produits.id_description ON dbo.ndxlibelle.id_lib >
dbo.produits.id_libON
dbo.sous_famille.id_sous_famille >>>dbo.produits.id_sous_famille ON dbo.ndxprix.id_prix >
dbo.produits.id_prixBon !
c'est une vue concernant 5 tables (c'est d'ailleurs pour cela que j'ai
crééune vue !)
sous access tout fonctionne bien mais avec mssql2000 non !
j'avais meme un ORDER BY dbo.famille.nom_famille,
dbo.sous_famille.nom_sous_famille
mais cela creait un SELECT TOP 100 PERCENT qui empechait aussi
l'update!
voici mon ordre d'update
UPDATE R_produits SET select_produit = 'False', libProduit = 'dvd
Compatible',
libDescription = 'C'est super top . Tip top quoi !', libPrix >
37.9900,nom_famille = 'dvd', nom_sous_famille = 'divx', reforigine = '',
refSaari = 'SAAR-HH2B4', texteplus = 'pas d´infos supplémentaires',
dispo >'24h',
aulieude = 125, origine = 'False', vignette = 'v_vide', photo >
'p_vide',extention = 'jpg',
enligne = 'True', garantie = '6',
qteStock = '9', seuilCmd = '3', stokMax = '10', enCmd = 'False' WHERE
id_produit= 14
je suis en asp.net
merci de me donner une piste parceque la je pete un cable
--
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 *************************