Générateur de script sql de données

Soyez le premier à donner votre avis sur cette source.

Vue 27 840 fois - Téléchargée 2 014 fois

Description

J'ai développé cette petite application pour mettre à jour une base distante SQLServer

Le principe est simple. On saisie la chaine de connexion, on sélectionne les tables à exporter et on obtient des scripts SQL d'insertion.

Voila c'est du rapide et ça demande a être amélioré mais faute de temps pour l'instant...

Cette application utilise une petite lib que j'avais développé auparavant, pour accéder à la structure des bases SQLServer 2000, non tésté sur 2005

Source / Exemple :


(tout est dans le zip)

Conclusion :


Pour l'instant je n'ai pas trouvé du bug et cela fonctionne sur toutes les bases que j'ai testé

Si vous la faite évoluer, merci de me prevenir, je la mettrai en ligne en vous citant.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
cs_vincent_c Messages postés 5 Date d'inscription mardi 25 janvier 2005 Statut Membre Dernière intervention 10 janvier 2007
10 janv. 2007 à 22:48
quelle différence avec les fonctionnalités des data adapteurs qui générent les scripts à partir de la structure des tables distantes ????
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
11 janv. 2007 à 10:03
Sauf erreur de part, le DataAdapter ne génére pas de script SQL !
Il fait plutot le point entre un DataSet et la base en utilisant des objets Connection et Commands.

La différence entre le DataAdapter et cette source :
- elle ne fait que générer des scripts SQL INSERT INTO (avec gestion du RollBack et du compteur Auto)
- elle est utilisable par d'autre personne que les développeurs (car c'est une appli et non un composant)
- elle se basse sur une lib qui permet d'accéder à toute la structure d'une base SQLServer (c'est le gros intéret de cette source)
mounibec Messages postés 33 Date d'inscription vendredi 26 mai 2006 Statut Membre Dernière intervention 28 mars 2008
9 févr. 2007 à 03:51
bonjour thiosyiasar ,

Ton appli est superbe, ça ma beaucoup servi, car je cherchais une maniere d'acceder a la base comment etant un user. Mais du moment où j'ai voulu le faire en asp.net ça n marche pas, il me retourne une erreur : " La propriété ConnectionString n'a pas été initialisée. : System.InvalidOperationException " .

Voila ce que le code :

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using DSTableAdapters;


public partial class _Default : System.Web.UI.Page
{
ArticleTableAdapter art = new ArticleTableAdapter();

private SqlConnection _oSqlConnection ;


private void showError(Exception ex)
{
TResult.Text= ex.Message+" : "+ ex.GetType();
}

private void LoadData()
{
try
{
this._oSqlConnection.Open();
TResult.Text= "ça marche ";
GridView.DataSource = art.GetData();
GridView.DataBind();

}
catch (Exception ex)
{
this.showError(ex);
}

}

private void Page_Load(object sender, EventArgs e)
{
TConnect.Text = ""server=127.0.0.1;database=regexdb;user id=sa;password=fst"";
}
protected void BConnect_Click(object sender, EventArgs e)
{
try
{
this._oSqlConnection = new SqlConnection(this.TConnect.Text.Trim());

this.LoadData();
}
catch (Exception ex)
{
this.showError(ex);
}
}

}

Est ce que tu as une idee ?

Et merci encore ..
mounibec Messages postés 33 Date d'inscription vendredi 26 mai 2006 Statut Membre Dernière intervention 28 mars 2008
9 févr. 2007 à 05:29
oooof j viens d le regler :

this._oSqlConnection = new SqlConnection("server=127.0.0.1;database="+db+";user id="+tu+";password="+tp+"");

(les variables sont les valeurs des champs textes)
donc est ce que je pourrais deduir que la methode trim() ne marche pas comme je le prevoyais en asp.net ?
thiosyiasar Messages postés 186 Date d'inscription lundi 11 mars 2002 Statut Membre Dernière intervention 30 novembre 2010 3
12 févr. 2007 à 03:31
Salut Mounibec,

Une prochaine fois, pose ta question sur le forum, tu auras plus de chance d'avoir une réponse.

Sinon je suis heureux que ce code te serve car j'ai bien l'impression que tu es le seul, vu le nombre de commentaire :(

A+

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.