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

InterBase Discussion :

[INTERBASE]Fonction UDF et Duplication ???


Sujet :

InterBase

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2003
    Messages : 147
    Points : 109
    Points
    109
    Par défaut [INTERBASE]Fonction UDF et Duplication ???
    Salut à tous,

    Je me pose quelques questions en attente de réponses :
    1)A propos des fonctions UDF, a quoi servent elles, et ou peut on les trouver (ou bien une aide dessus) ?
    2)Sinon ma base de données utilise l’intégrité référentielle, il existe-t-il un moyen d’effectuer une duplication d’un enregistrement (Table maitre et table esclaves) grâce à cette intégrité référentielle (comme pour la suppression). Où sinon comment faire une duplication, a part mannuellement ?

    Merci d'avance,

    Cordialement,
    Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"

  2. #2
    Membre régulier
    Inscrit en
    Avril 2002
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 70
    Points : 84
    Points
    84
    Par défaut
    Bonjour,

    UDF veut dire User Defined Functions. En gros, c'est des fonctions que tu crées dans des DLL et que tu peux utiliser avec Interbase. Exemple, il n'y a pas la fonction lower dans Interbase, tu peux la créer dans une DLL l'importer dans Interbase et l'utiliser comme si de rien n'était.

    On peut retrouver les UDF dans le répertoire UDF sous Interbase.

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2003
    Messages : 147
    Points : 109
    Points
    109
    Par défaut
    Ok, mais par exemple je vois bien une dll dans le repertoire UDF de interbase mais comment savoir les fonctions disponibles, et comment faire pour les utiliser sous Interbase ?
    Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"

  4. #4
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Oui avec Interbase 6 il y a une (ou deux ?) UDF de livrée.

    Le script SQL d'installation de celle-ci se trouve dans le sous répertoire exemples\UDF et c'est un fichier .sql

    Il suffit de l'ouvrir avec un editeur de texte pour voir les fonctions que ca installe et éventuellement ne copier dans ISQL que les déclarations que vous voulez utiliser.

    Pour l'utilisation c'est simple une foit la fonction déclarée elle s'utilise comme si c etait une fonction SQL.
    Par exemple STRLEN() qui renvoie la longueur d'une chaine :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select StrLen(ColonneDeTypeChaine), ... from MaTable where ...;

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2003
    Messages : 147
    Points : 109
    Points
    109
    Par défaut
    Merci beaucoup, je comprend maintenant comment focntionne les fonctions UDF (livrées avec Interbase), cependant il y a t-il moyen de créer ses propres fonctions ?
    Et grace aux fonctions UDF il y a t-il moyen d'effectuer la duplication d'un enregistrement d'une table maitre (et des enregistrements des tables esclaves) ?
    Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"

  6. #6
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Oui bien entendu on peux en programmer soit même, avec Delphi ou en langage C enfin je dirais même tout langage permettant de compiler une DLL.

    Mais pour pouvoir le faire il faut certaines compétances, en la matière. On peux trouver des tuto sur le net concernant leur création.

    Cependant on trouve également de nombreuses UDF gratuites sur le net et il est rare de ne pas trouver son bonheur parmis toutes les fonctions disponnibles.

    En ce qui concerne la duplication d'enregistrement (copie d'une table vers une autre) le faire depuis une UDF me parait assez difficile et surtout pas tres adapté. Le plus simple et logique pour faire ca serait de la faire dans un ou plusieurs triggers. Si cette duplication doit être faite de manière automatique apres une madification ou insertion ou avant un effacement par exemple.

    Sinon si c'est de la copie "à la demande" le plus simple est de la faire faire par une procédure stockée.

  7. #7
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2003
    Messages
    147
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2003
    Messages : 147
    Points : 109
    Points
    109
    Par défaut
    Encore un grand merci pour ces informations.

    Cordialement,
    Les deux mots les plus brefs et les plus anciens, oui et non, sont ceux qui exigent le plus de réflexion. "Pythagore"

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

Discussions similaires

  1. problème avec les fonctions UDF
    Par sitaleb dans le forum Firebird
    Réponses: 3
    Dernier message: 01/03/2008, 11h57
  2. [Interbase] fonctions iBase_ Query de PHP
    Par jlf dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 22/01/2008, 15h59
  3. Interbase et UDF
    Par Morfus dans le forum Bases de données
    Réponses: 5
    Dernier message: 26/02/2007, 12h36
  4. [SQL-Interbase] Fonction SHOW TABLES
    Par polocfa41 dans le forum InterBase
    Réponses: 4
    Dernier message: 26/04/2005, 11h33
  5. c'est quoi les fonctions UDF
    Par devalender dans le forum Débuter
    Réponses: 7
    Dernier message: 28/05/2004, 09h52

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