IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

conversion nvarchar dans requete ms-sql


Sujet :

Développement SQL Server

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 22
    Points : 12
    Points
    12
    Par défaut conversion nvarchar dans requete ms-sql
    Bonjour a tous,

    j'ai deja posté sur ce forum mais j'ai pas eu de reponse et je pense que j'ai posté au mauvais endroit

    cela fait semaine que j'arrive pas a avancer a cause de mon probleme et j'en peux plus.

    Je suis en train de faire une recherche multifonctions en fonction des prix dans ma base de données.
    Le seul soucis c'est que mon champs de base MSSQL est de type nvarchar( ça je peux pas y toucher )

    alors pour exploiter ce nvarchar je veux le convertir dans ma requete :
    Code :


    SELECT * FROM annonces,marques,diess WHERE diess.ident = annonces.diess AND marques.ident = annonces.marque AND convert(numeric,annonces.prix) < '10 000'

    et systematiquement la requete me renvoie cette erreur

    "ODBC driver does not support the requested properties.
    /monfichier.asp

    je sais plus quoi faire j'ai epluché tous les forums et les pages internet et rien ne marche ( meme si j'enleve <'10 000') mais dès que j'enleve le convert la requette s'execute bien mais me renvoie des valeurs erronées

    merci de m'aider car c'est super important
    et super urgent

  2. #2
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    182
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 182
    Points : 113
    Points
    113
    Par défaut
    Deja il faut que t'enleve les guillemets de 10000 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    (numeric,annonces.prix) < 10 000

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 22
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par voyageur Voir le message
    Deja il faut que t'enleve les guillemets de 10000 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    (numeric,annonces.prix) < 10 000
    merci mais meme si j'enleve cette comparaison j'ai toujours le probleme, je veux juste savoir quelle est la bonne syntaxe ( s'il elle existe bien sur ...)

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    par politesse : utiliser le format code et indentez vos requêtes cela les rends lisibles.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    SELECT * 
     
    FROM   annonces A
           INNER JOIN marques M
                 ON M.ident = A.marque
           INNER JOIN diess D
                 ON D.ident = A.diess
     
    WHERE   CAST(A.prix AS DECIMAL(16,2)) < 10000.00
    Utilisez des JOIN pour faire vos jointures. Les jointures dans la clause WHERE ont simplement 16 ans de retard !
    Utilisez CAST qui est la fornction normative de transtypage.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 22
    Points : 12
    Points
    12
    Par défaut
    Merci de votre aide mais je recupere un site deja existant et je ne suis malheureusement pas un expert en SQL
    J'ai essayé votre solution mais j'ai toujours l'erreur

    Microsoft OLE DB Provider for ODBC Drivers error '80040e21'
    ODBC driver does not support the requested properties.
    /monfichier.asp, line 159

    mais des que j'enleve ce fameux cast j'ai bien des resultats (meme s'ils sont faussé j'en ai quand meme)

    j'ai pas de solution, la derniere etant de voir avec le proprietaire de la base pour changer le type de champs utilisé( actuellement le nvarchar)
    je voudrais en meme temps savoir quel type est le plus approprié sachant que je veux les resultats sous cette forme : "12 000,00" ou "12 500, 45" avec séparateur de millier et affichage de centimes.

    le décimale, le numéric ou le float?

    Meci de m'aider car c'est super important je suis bloqué dans le développement de mon site à cause de ce fichu nvarchar qui m'empeche de faire des tris de prix en ordre

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    non, c'est un problème du driver ODBC : il ne doit pas être à jour ou bien imposer des requêtes purement ODBC ce qui est un paramétrage stupide !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 22
    Points : 12
    Points
    12
    Par défaut
    bon ben passez de bonnes fetes , ( je vé me reposer la tete) et merci de répondre à mon précedent post si vous avez la solution
    Merci encore

Discussions similaires

  1. conversion nvarchar dans requete ms-sql
    Par deepuser dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 24/12/2007, 17h53
  2. [C#] Problème de requetes en Sql dans une form fille
    Par padodanle51 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 10/05/2006, 11h32
  3. erreur dans requete Sql
    Par flOZ dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/05/2006, 02h49
  4. [SQL-SERVER 2000] Remplacer l'instruction GO dans requete
    Par Sytchev3 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 05/04/2006, 14h24
  5. Passage de parametres URL dans requete SQL
    Par Fenryl dans le forum ASP
    Réponses: 4
    Dernier message: 14/12/2005, 13h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo