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

SQL Procédural MySQL Discussion :

conversion exécution commande DOS depuis MS SQL Server vers MySQL


Sujet :

SQL Procédural MySQL

  1. #1
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 19
    Par défaut conversion exécution commande DOS depuis MS SQL Server vers MySQL
    Bonjour à tous,
    je suis entrain de ré-écrire des procédures stockées extraites de MS-SQL Server pour pouvoir les utiliser sur MySQL mais j'ai quelques soucis d’adaptation...
    Connaissez vous une manière d'utiliser cette commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    execute var=master..xp_cmdshell chaine,NO_OUTPUT
    en MySQL ?

    Merci d'avance !

  2. #2
    Membre Expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Billets dans le blog
    1
    Par défaut
    salut,

    c'est sensé faire quoi? ça serait peut-être plus simple de donner l'explication en même temps car là la syntaxe est pas très parlante

  3. #3
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 19
    Par défaut
    oui c'est pas faux ça ^^
    en fait il s'agit d'une procédure chargée d'exécuter la ligne de commande DOS passée en paramètres et de retourner le code résultat ('0' si pas d'erreurs)
    voici la procédure d'origine sur SQL Server :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CREATE PROCEDURE [DOSEXEC] 
    @inst varchar(300)
     
    AS
     
    BEGIN
     
    declare @res  int
    execute @res=master..xp_cmdshell @inst,NO_OUTPUT
    return @res
     
    END
     
    GO
    est-il possible d'adapter cette procédure sur MySQL ?

    Merci d'avance

  4. #4
    Membre émérite
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 445
    Par défaut
    Il y a peut être plus simple, mais tu dois pouvoir le faire avec une User-Defined Function.
    Il y a un exemple ici :
    http://www.mysqludf.org/lib_mysqludf...x.php#sys_exec

  5. #5
    Membre Expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Billets dans le blog
    1
    Par défaut
    le seul moyen, à ma connaissance, c'est les UDF: les fonctions utilisateurs que tu dois compiler en c/c++ pour étendre les fonctionnalités de mysql...

  6. #6
    Membre averti
    Inscrit en
    Mai 2004
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 19
    Par défaut
    Citation Envoyé par Fred_34 Voir le message
    Il y a peut être plus simple, mais tu dois pouvoir le faire avec une User-Defined Function.
    Il y a un exemple ici :
    http://www.mysqludf.org/lib_mysqludf...x.php#sys_exec
    merci, oui ça correspond bien à ce que je cherche, par contre pas moyen de mettre en place cette UDF... (mais bon je m'y suis certainement mal pris..)

    j'ai mis la lib_mysqludf_sys.so dans le dossier bin mais lorsque j'exécute le fichier sql d'installation j'obtiens toujours le même message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Error Code: 1123. Can't initialize function 'sys_exec'; UDFs are unavailable with the --skip-grant-tables option
    il y a bien un install.sh fourni mais bon le serveur étant sous windows...

  7. #7
    Membre Expert
    Avatar de ericd69
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2011
    Messages
    1 919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 919
    Billets dans le blog
    1
    Par défaut
    lis bien les divers tutoriels qui en parle...

    tu dois compiler ton .so en tant que share (sous linux ou unix) ou ta dll (windows) en tant que bibliothèque dynamiquement liée...

    la dll (ou so) doit fournir des points d'entrée dépendant de l'utilisation que tu veux faire (agrégat, simple fonction ou les 2)

    voici 2 séries d'exemples: ici et

    et lis la doc mysql aussi

Discussions similaires

  1. Réplication données depuis Base SQL Server vers Base MYSQL
    Par elspliffo dans le forum Réplications
    Réponses: 2
    Dernier message: 27/09/2007, 14h02
  2. Réplication données depuis Base SQL Server vers Base MYSQL
    Par elspliffo dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/09/2007, 14h02
  3. Export de onnées depuis sql server vers mysql
    Par elspliffo dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/07/2006, 00h11
  4. mise a jour data de sql server vers mysql
    Par kimo0147 dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 30/06/2006, 11h25
  5. [MIGRATION] Migration de MS SQL Server vers MySQL
    Par M1000 dans le forum Outils
    Réponses: 2
    Dernier message: 26/04/2006, 14h29

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