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

Adaptive Server IQ Sybase Discussion :

T-SQL dynamic Sybase IQ ASE 12.6


Sujet :

Adaptive Server IQ Sybase

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    juin 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : juin 2009
    Messages : 3
    Points : 3
    Points
    3
    Par défaut T-SQL dynamic Sybase IQ ASE 12.6
    sous Sybase ASE 12.6
    requêté avec ISQL version 9.0.1


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    declare @rsql varchar(128) 
    set @rsql ='select * from Matable'
    exec @rsql
    ça me dit: Procedure @rsql not found

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    declare @rsql varchar(128) 
    set @rsql ='select * from Matable'
    execute immediate with result set on @rsql
    ça me dit: Syntax error near result on line 3


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    execute immediate with result set on 'select * from Matable'
    ça fonctionne


    Pourquoi ?????

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    Je ne connais pas bien IQ - sour ASE l'exec dynamique se fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    declare @sql varchar(200)
    select @sql = 'select * from foo'
     
    exec (@sql)   -- attention aux parentheses!!!
    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    juin 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : juin 2009
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    déjà merci d'avoir répondu

    j'avais testé aussi avec les parenthèses et ça donne:

    Result set not permitted in '<batch statement>'
    pareil si je met le code ds une procédure stockée et que j'exécute par

    exec ma procédure


    Mystère et boule de gomme...

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    juin 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : juin 2009
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    c'est en cherchant qu'on trouve peut-être!

    apparemment c'est une question de retour des requêtes de type "select ..."

    ça passe en créant une procédure avec un variable spécifiée output qui renvoie l'entier de retour de la procédure

    ( c'est claire ce que je dis ?..)
    ça donne un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    declare @retour int
    execute la_procedure @retour
    du coup le requêteur par batch ne râle plus

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    mars 2004
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2004
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Salut

    Ceci fonctionne chez moi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    BEGIN
      DECLARE  rsql varchar(128);
      SET rsql ='select count(*) from Matable';
      execute immediate WITH result SET ON rsql;
    END

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. T-SQL dynamic Sybase IQ ASE 12.6
    Par soldado dans le forum Sybase
    Réponses: 3
    Dernier message: 22/07/2009, 16h55
  2. [ASE][OC]outil graphique SQL pour Sybase
    Par fcbh2 dans le forum Sybase
    Réponses: 2
    Dernier message: 31/10/2006, 12h03
  3. [SQL-Serveur][Sybase]Fonctions d'agrégat imbriquées
    Par vincenteraptor dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/06/2006, 09h46
  4. [debutant] PBL variable resultat & sql dynamic
    Par DaxTaz dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 16/06/2004, 09h44
  5. sql dynamic : passage de parametre entre quotes
    Par de LANFRANCHI dans le forum SQL
    Réponses: 12
    Dernier message: 26/05/2004, 15h09

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