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