Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Inserer plusieurs lignes en une seule requete ?? [ Archives / Base de données ] (greg63)

vendredi 20 mai 2005 à 16:26:27 | Inserer plusieurs lignes en une seule requete ??

greg63

Salut a tout l'monde, j'ai un petit souci avec une base access en C# : je souhaite faire plusieurs INSERT a la suite, mais j'aimerais avoir a faire le moins d'acces a la BDD possible (pour une question de rapidité d'execution) ! Donc ma question est : est ce possible d'inserer plusieurs lignes en une seule requete ? Ou bien est ce que l'on peut importer des données a partir d'un fichier texte dans une base access ?
Merci de vos réponses !


vendredi 20 mai 2005 à 16:52:04 | Re : Inserer plusieurs lignes en une seule requete ??

taoetc

Tu dois pouvoir utiliser  une requete du style IMPORT  avec le nom de ton fichier texte ou une ligne  corresopnd à un enregistrement, et délimiter les colonnes , apres, il faut aller voir dans l'aide  de acces, pour voir ce qu'il accepte comme requete, et comment définir la fonction IMPORT.
Ceci est possible avec lea plupart des SGBD,  et meme si Acces, c'est un peu tout pourri sur certain point, ca peut pas etre totalement pourri.

Mais ta question n'était pas vraiment du c#

En c#, en remplissant une datatable , tu  peux faire un insert des lignes directement dans ta base. Apres le comment exactement, à toi de voir .

vendredi 20 mai 2005 à 16:56:23 | Re : Inserer plusieurs lignes en une seule requete ??

coq

Administrateur CodeS-SourceS
Salut,

Tu auras peut être des réponses plus pointues en demandant sur le forum de SQLfr.com :-)



Cocoricoooooooo !!!!
coq
MVP Visual C#

mardi 24 mai 2005 à 15:03:28 | Re : Inserer plusieurs lignes en une seule requete ??

Never_Summer

Ben écoute, en fait tu ne peu fair qu'un seul inserte par table :(

donc le mieux c de crée plusieur stringquery, que tu va inserer une après l'autre

un stringquery = un inserte dans UNE seule table.

voila un pti bout de code, pour une meilleur explication

j'utilise un classe config dans laquelle se trouve la chaine de connexion
et la connexion et de type ODBC

OdbcConnection cn = null ;

OdbcCommand cmdInsert ;
OdbcCommand cmdInsert2 ; //tu doi cée autan de commande que tu a d'insert 

string
queryInsert 1;
string queryInsert 2 ;
...
try 
   {
   cn =
new OdbcConnection(config.connectionString()) ;
   cn.Open() ;

   queryInsert = "INSERT INTO [Table]([Colone])"+
                              " VALUE ([donnée])" ;
   queryInsert2 = "INSERT INTO ...

   cmdInsert =
new OdbcCommand(queryInsert,cn) ;
   cmdInsert2 = new OdbcCommand(queryInsert2,cn) ;

   cmdInsert.ExecuteNonQuery() ;
   cmdInsert2.ExectueNonQuery() ;
}

catch(OdbcException ex)

{

MessageBox.Show(ex.ToString()) ;

}

finally

{

if(cn != null)

{

cn.Close();

}

}

}


Voila en espèrant que sa puisse taider




mardi 24 mai 2005 à 20:02:04 | Re : Inserer plusieurs lignes en une seule requete ??

greg63

Merci bien, mais du coup, j'ai qd meme plusieurs acces a la base de données, et en fait, c'est ce que je souhaiterais eviter !!

mercredi 25 mai 2005 à 14:38:14 | Re : Inserer plusieurs lignes en une seule requete ??

Never_Summer

ben pour fair des insert, tu es obliger!
et en utilisant le bout de code donnée o dessu, tu ne fai k'une connection pour 10 insert si tu veu, vu ke le début de la connection c le cn.open.

donc voila si tu trouve meilleur solution, je veu bien l avoir aussi :)

a plus

jeudi 15 septembre 2005 à 10:45:59 | Re : Inserer plusieurs lignes en une seule requete ??

Mimoza222

Je pense que si tu veut avoir un seul acces a ta base de donnée construit une "grande" requète.
Du style : "requète1 ; requète2; ..." et normalement ca passe. Par contre si tes requète ne sont pas bonne ca va etre plus difficile a trouver la quel, c'est tou.
@+




Cette discussion est classé dans : base, lignes, requete, inserer, seule


Répondre à ce message

Sujets en rapport avec ce message

recuperer des données d un fichier txt et les inserer dans une base de donnée sql Server [ par amirirn1 ] Salut ,Je dois recuperer des champs dans un ficher txt et les inserer dans des tables d une base de donnée sql Server ,La taille des champs du fichier Requete mysql Base de donnée [ par Mattis ] Bonjour.J'aimerais savoir comment à partir d'un remotes de mIRC on peut interoger une base de donnée mysql.Je ne connais pas trop mysql mais j'ai un c dataset, xml et datagrid [ par paloxicide ] g un datset qui se rempli au moyen d'un fichier XML qui contient ma base de données. je veux faire une requete select sur ce meme dataset mais je ne Inserer un Object de type BLOB ou CLOB dans une base Oracle [ par oh_biba ] Bonjour, je suis relativement perdu quant a ce probleme : Je souhaite stocker des fichiers dans une base Oracle depuis appli web (C#). Comment faire, Problème avec base de données [ par emmanuel9 ] Bonjour à tous, Mon problème vient du faite que j'ai plusieurs tables dans une base de données dont une table personne et j'ai un programme qui ecrit requete base Access OLEDBConnection [ par jesaipa_1 ] Slt a tous, j'ia un petit pb avec mes requete cad que mes requetes SELECT et INSERT marche mais pas ma requete DELETEje n'arrive pas a savoir pourquoi DataGrid [ par francesdereve ] Comment je peux recuperer toutes les lignes d'un datagrid pour les mettre dans une base de donnees.Tester egalement s'il y a des lignes vides.Au cas o Probleme de Connection [ par francesdereve ] Comment je peux recuperer toutes les lignes de mon DataGrid pour l'inserer dans une base.Je veux pas utiliser le Itemarray.C'est à dire comment à part execution d'une requete [ par maitesn1 ] Bonjour tout le monde,je souhaiterai faire une requete qui permet d'inserer une ligne dans une table et en meme temps me recuperer id de la ligne qui realiser une seule ouverture de la base de donnée [ par beny100 ] bonsoir,je realiser des traitements de ficheir et j'ouvre pour cela plus de3 connexions a ma base de donnée je voudrais maintenant realiser qu'une seu


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,203 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.