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

Bases de données Delphi Discussion :

CREATE DATABASE avec dbExpress


Sujet :

Bases de données Delphi

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 6
    Points : 5
    Points
    5
    Par défaut CREATE DATABASE avec dbExpress
    Bonjours,

    je voudrais créer dinamiquement ma base de donnée dans le SGBD que possède la PC cible. Avec dbExpress, je peux supporter MSSQL, Firebird... etc... mais je voudrais créer a la demande ma base de donnée lors de l'installation via mon programme d'install.

    Donc:

    J'ai une série d'objects TSQLConnection déposé dans mon Form principal, chacun configuré pour une base de données cible.

    Selon le contexte de l'installation, seul 1 des objects est utilisé via assignation a un pointeur. Et les autres: décoration, ils ne sont pas activés ni utilisés. Donc, la configuration du TSQLConnection est faite par Delphi 7(.1), ce qui est astucieux car la faire soit même serait une corvée.

    Et alors. Et alors plus loin je ne vais pas.


    Pour créer la BD j'ai assayé la méthode Execute qui est documentée bonne pour le language DDL... mais l'erreur qui est retournée montre que dbExpress teste l'existance de la DB avant d'exécuter Execute.

    Je donne ma langue aux chats. Qui m'aide ?

    Mon code:
    --------------------------------------------------------------------------
    SqlConnection1.ConnectionName := 'IBConnection' | DesignTime
    les autres parâmetres, nombreux sont configurés par le RAD
    ........................

    SQLConnection1.LoginPrompt := False;
    SQLConnection1.Params.Values['DataBase'] := DBase.Text;
    SQLConnection1.Params.Values['User_Name'] := DBUserName.Text;
    SQLConnection1.Params.Values['Password'] := DBPassWord.Text;

    SqlConnection1.Execute( 'CREATE DATABASE ''' + DBase.Text + ''' USER ''' + DBUserName.Text + ''' PASSWORD ''' + DBPassword.Text + ''';', nil, nil );

    Erreur: dbExpress Error:[0x0015]: Connection Failed
    SQL SERVER ERROR: I/O Error for file .... (le fichier de ma base de données)
    Error while trying open file
    Le système n'a pas réussit à localiser le fichier

    ==> bien entendu car je voudrais que le serveur FireBird me crée ce fichier!!!

    Est-ce possible ???
    Merci d'avance de votre appuis!
    Abraço,
    Pierre.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 287
    Points : 91
    Points
    91
    Par défaut
    As-tu trouvé une solution. Je suis confronté au même problème.

    Merci

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 6
    Points : 5
    Points
    5
    Par défaut pas encore de solution
    Pas encore de solution.

    En vérité, j'ai créé une BD vide avec l'utilitaire de Firebird que je copie toujours lors de mon instalation, même si en fait mon client va utiliser MsSql, Oracle etc....

    La création des tables fonctionne bien et question migration entre MsSql et Firebird, c'est tout bon.

    J'ai migré toute mon application de BDE pour dbExpress. Pas évident...

    Pierre.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 287
    Points : 91
    Points
    91
    Par défaut
    C'est ce que je faisais, mais maintenant mon application doit tourner sur un serveur.
    Mais, je viens de trouver la solution en utilisant un TIBDATABASE, juste pour céer la base. Je vais me lancer dans la création des tables, en espérant que ça marche.

    Merci

Discussions similaires

  1. Create Database pour MySql avec ADO.NET
    Par mappy dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 14/01/2008, 12h13
  2. Réponses: 8
    Dernier message: 04/10/2005, 19h27
  3. CREATE DATABASE
    Par willowII dans le forum Débuter
    Réponses: 1
    Dernier message: 13/01/2005, 13h48
  4. Création database depuis Delphi avec dbExpress
    Par alex4 dans le forum Bases de données
    Réponses: 2
    Dernier message: 17/09/2004, 16h01
  5. Afficher tous les champs d'une table avec dbexpress et MySQL
    Par LHT dans le forum Bases de données
    Réponses: 2
    Dernier message: 25/06/2004, 17h11

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