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

Requêtes et SQL. Discussion :

Liaison ODBC entre SQLITE et ACCESS


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Chef de projet Habitat
    Inscrit en
    Avril 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet Habitat
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2018
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Liaison ODBC entre SQLITE et ACCESS
    Bonjour à tous !

    Aujourd'hui je suis en mode "expérimentation", et je me retrouve face à un nouveau problème !
    J'ai une base Access qui lit des tables via une liaison ODBC...les données source sont stockées dans un base SQLITE.
    Mon problème, c'est que lorsque j'importe les données SQLITE via ODBC dans ma base Access, tous les champs texte sont automatiquement défini comme étant du "texte long"...c'est gênant car il n'y a pas de jointure possible sur des champs en texte long !

    Pas de jointures, pas de requêtes ! J'ai tenté et j'ai eu droit a un message du type "impossible de réaliser une jointure sur un champ memo, ole ou hyperlink object + access"


    Quelqu'un a une solution ? Peut-on dire à access que lorsqu'il importe un champ texte via ODBC, celui ci est "par défaut" du texte court ?

    Merci

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Si tu fais une vrai importation, c-à-d que tu copies les données de ta source dans une table Access, tu peux définir les types que tu veux dans la table Access. Access va respecter le type que tu as défini.
    Et le processus change un peu : tu dois vider la table Access de destination puis la reremplir avec l'importation pas la recréer à chaque importation.

    Si tu fais une liaison vers la table dans ta BD source, là tu es pris avec ce que Access vois et tu n'as pas le contrôle.
    Tu pourais essayer d'intercaller une requête Access entre ta table liée et son utilisation.
    Un truc du genre :

    reqTaTableSQLLITE
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select left([TaTableSQLLITE].[TonChamp1], 255) as [TonChamp1], left([TaTableSQLLITE].[TonChamp2], 255) as [TonChamp2]
    from [TaTableSQLLITE]

    Je pense que couper à 255 carcatères devrait tranformer ton champ texte long (mémo) en texte ordinaire.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Chef de projet Habitat
    Inscrit en
    Avril 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet Habitat
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2018
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci pour la réponse !

    Je vois bien la méthode mais j'ai une dizaine de table en liaison, du coup ça me fait créer 10 table de passage avant de faire le requête, un peu fastidieux
    On ne peut pas paramétrer ACCESS pour lui dir que le champ texte d'une base SQLITE est obligatoirement du texte court ?

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Non désolé c'est Access qui décide.

    La méthode des requêtes n'exige qu'une requête par table.
    As-tu validé si c'était une solution valide ?
    Il est assez facile d'écrire du code pour générer le SQL dans le nombre de tables source n'est pas vraiment un problème.
    En renommant tes tables liées et en nommant tes requêtes comme tes tables liées initiales, tu n'as à priori rien à changer ailleur.

    Bon tu peux aussi d'écrire ton propre driver ODBC.
    Ça doit être possible mais sans doute pas très simple voir vachement complexe.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Et si tu as les accès, tu peux probablement définir une vue (requête) du côté de SQLite et utiliser cette vue à la place de ta table.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    il faut télécharger et installer le driver SQL3.

    perso je n'est pas ce genre de problème.

    Nom : Sans titre.png
Affichages : 496
Taille : 20,3 Ko

Discussions similaires

  1. [2008R2] Liaison ODBC entre deux DB
    Par Wifibee dans le forum Développement
    Réponses: 2
    Dernier message: 29/01/2014, 16h37
  2. [03] erreur liaison ODBC Access-Excel
    Par mirumoto dans le forum Access
    Réponses: 1
    Dernier message: 07/06/2007, 13h09
  3. [ODBC] Lien ODBC entre Mysql et ACCESS
    Par gege87270 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 24/05/2007, 23h20
  4. liaison entre excel et access
    Par aghiad dans le forum Excel
    Réponses: 2
    Dernier message: 17/04/2007, 15h19
  5. Liaison ODBC - base Access
    Par shinobi dans le forum Access
    Réponses: 6
    Dernier message: 09/03/2007, 08h58

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