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

VBA Access Discussion :

Connexion Access vers SQL Server


Sujet :

VBA Access

  1. #1
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2012
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2012
    Messages : 242
    Points : 56
    Points
    56
    Par défaut Connexion Access vers SQL Server
    Bonjour;

    J'avais une application développé par access et connecté par base de donnee SQL server;
    le probleme est l'orsque je fait une connexion direct vers sql server par code VBA ,J'observe que le taille d'application est augmenté et normalement la taille d'application se reduit parceque je remplacer des requêtes constuites par assistant d'access par autre en Code VBA .

    exemple de code:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim cnx As ADODB.Connection
    Set cnx = New ADODB.Connection
    Dim rst As ADODB.Recordset
    Set rst = New ADODB.Recordset
    Cnx.ConnectionString = "UID=" & UserSQL & ";PWD=" & MotDePasse & ";" & "DRIVER={SQL Server};Server=" & NomServeur & ";Database=" & NomBaseDeDonnées & ";"
    'Ouverture de la base de données
    Ch = "Requete  en SQL"
    cnx.Open
    rst.Open Ch, cnx
     
    rst.Close
    cnx.Close




    Merci.
    Ridha Ben Abdelaali

  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.

    Il est difficile de savoir ce qui prend de la place dans une frontale Access mais voici ce que je sais :
    • Les objets (tables, requête, rapports ...) prennent de la place.
    • Les images prennent parfois BEAUCOUP de place.
    • Le code (tapé) prend de la place
    • Le code compilé prend de la place
    • Les requêtes prennent de la place mais peu. J'ai déjà eu beaucoup de requête et ma BB n'était pas énorme.
    • Les objets temporaires (notamment les transactions) prennent de la place.


    Il est recommandé d'activer l'option Compacter en sortant pour que Access fasse le ménage,
    On peut aussi utiliser l'option de la ligne de commande : decompile qui supprime le code compilé et qui après recompilation qui fait parfois diminuer la taille de la BD.

    À mon avis une requête dans le code VBA prend plus de place qu'une requête dans l'assistant car il faut l'espace pour stoker les caractères ET l'espace pour stocker la version compiler donc au moins 2 fois la longueur de la chaîne de caractères.
    Pour les requêtes standard Access ne garde qu'une partie de l'information sous forme de texte et les informations pour la présentation graphique.

    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
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2012
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2012
    Messages : 242
    Points : 56
    Points
    56
    Par défaut Access et SQL server
    Bonjour,

    Il y at'il une methode pour faire netoyage de case reserver pour une requete en VBA;

    et mieu que cette methode doit etre en VBA.

    Merci.

    Ridha Ben Abdelaali.

  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
    Bonjour.

    Il y at'il une methode pour faire netoyage de case reserver pour une requete en VBA;
    Désolé je ne saisi pas ton besoin.

    Qu'entends-tu par "Case réservée dans une requête" ?

    Peux-tu mettre un exemple de ce que tu veux faire.

    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
    Membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2012
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2012
    Messages : 242
    Points : 56
    Points
    56
    Par défaut
    Citation Envoyé par marot_r Voir le message
    Bonjour.



    Désolé je ne saisi pas ton besoin.

    Qu'entends-tu par "Case réservée dans une requête" ?

    Peux-tu mettre un exemple de ce que tu veux faire.

    A+
    bonjour;

    ce que je fait dire par "Case réservée dans une requête" , le place dans access qui sont utilisee apres une execution de requete en vba.

    Merci.

    Ridha

  6. #6
    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.

    les places dans access qui sont utilisées après une exécution de requête en vba.
    Désolé pas tellement plus évident. Je vais m'essayer à des suggestions

    Access peut exécuter des requêtes d'ajout, de suppression ou de modification en VBA.
    Ces requêtes ont donc une influence sur les champs des enregistrements des tables.

    On peut aussi ouvrir une requête de sélection et dans ce cas là, Access affiche le résultat dans une grille qui ressemble à une feuille Excel.

    Enfin on peut ouvrir une requête pour s'en servir comme source de données d'un programme VBA pour pouvoir interagir ou pas avec les données.
    Ce fonctionnement peut avoir une influence sur les champs des enregistrements des tables.

    Sinon, on peut aussi utiliser une fonction VBA dans un champ calculé.

    Et évidement ces traitements prennent de la place en mémoire vive et sur le disque.
    Quoi qu'il n'est pas évident de savoir combien, on peut le constater grâce au gestionnaire de tâche pour la mémoire et à l'explorateur Windows sur le disque.

    Voilà tout ce que "Place" m'inspire et j'espère qu'une des réponses sera ce que tu cherches ou au moins un début.

    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.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Il est bien l'heure de dire bonjour!

    Je suis perplexe par la question! Une requête qu'elle soit dans le requêteur d'access ou via vba elle génère une table temporaire. Une base Access est un fichier à accès directe sous forme de structures (enregistrement). Un enregistrement supprimé ou un table temporaire reçois un flag de suppression mais la table reste dans la base de données.

    Il est possible que le requêteur d'access optimise la taille de champ alors qu'en vba non. Un champ de 255 caractère tiendra 255 d'espaces même si le champ contient toto.

    En revanche un connexion adodb exécutera la requête sur Sql serveur et pas Access!

    Je te livre pel mêle ces informations sens vraiment savoir ce que tu cherche!

Discussions similaires

  1. [AC-2003] Connexion Access vers SQL Server 2005
    Par Currahee dans le forum VBA Access
    Réponses: 1
    Dernier message: 25/08/2009, 08h46
  2. Réponses: 2
    Dernier message: 28/03/2007, 08h59
  3. connexion access avec sql server 2000
    Par ash_rmy dans le forum Access
    Réponses: 3
    Dernier message: 29/11/2006, 10h24
  4. [vba] Problème de pass d'access vers sql server
    Par fix105 dans le forum Access
    Réponses: 5
    Dernier message: 22/02/2006, 16h31
  5. Portage requete Access vers SQL Server (Iif)...
    Par cmousset dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 14/06/2005, 16h38

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