Excel vers sqlserver webforms

cs_sarra0 Messages postés 25 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 9 mai 2010 - 29 févr. 2008 à 14:48
cs_sarra0 Messages postés 25 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 9 mai 2010 - 22 avril 2008 à 13:17
bonjour tt le monde ;
je cherche à importer un fichier excel vers sqlserver j,'ai cherché sur google j'ai trouvé un code ado alors que moi je travail en asp.net .quelqu'un pour m'aider?
merci d'avance.

11 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
29 févr. 2008 à 22:18
Salut



Alors tu as plusieurs solutions

Si 1 table sqlserveur 1 feuille excel
en passant par un dataset, cela doit etre possible

Sinon il y a SSIS de sql 2005, qui peut faire le boulot

Sinon il y a le code la main
mais tu peux lire une feuille excel comme une base de données
cf : connectionstrings.com par la chaine de connexion
0
cs_sarra0 Messages postés 25 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 9 mai 2010
3 mars 2008 à 15:53
Mercii bcp bcp nhervagault
j'ai la table note_etudiant:

Num_inscription           Nom             code_matiere               note
10                                    aa                           1                        15
20                                    bb                           1                           12
30                                    cc                              1                           10
10                                                                        2                           10
20                                                                     2                              11
30                                                                     2                              14

La 1ère colonne d'excel contient les num_inscription  la2   les nom  et la 3eme  les notes du matière code 1 et la 3 les notes du matière dt le code est 2   
je dois utiliser ql méthode pour insérer la feuille ds la table??
merciiii bcp      
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
3 mars 2008 à 16:12
Salut

1 )
Ta table note dois être du genre num_inscription  code_matiere note
sinon est est  mal formé est est pas en 3ieme forme normale.

2) tu peux utiliser la methode manuelle
tu charges le dataset
poour chaque note
tu inseres la matiere, la note et la matiere dans une liste
et apres tu parcours cette liste et tu inseres dans ta table.
0
cs_sarra0 Messages postés 25 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 9 mai 2010
3 mars 2008 à 16:34
merci bcp nhervagault c'est trés trés gentil ;
oui  ds la table note ya pas les nom c'est ds la feuille  excel seulement .
donc c'est possible de faire moi je trouve ça trés compliquer surtout que je débute an asp.net; j'ai pensé laisser excel et faire tt ça avec un gridview mais ce dérnier ne permet pas l'insertion  d'une colonne de données .
je me suis perturbée avez vous une consei à me donner .?
désolée pour le dérangement
merci infiniment
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
3 mars 2008 à 16:55
Ok

C'est pas si compliqé que ça,
il faut prendre les problèmes les uns apres les autres.
1 -> chargement du dataset à partir d'excel
2 -> remplir ta base avec les données de références
nom des matieres et des etudiants
de facon judicieuse (avec comme clés fonctionnelles le numeros d'inscription et numeros de matiere)

3-> lire le dataset
rechercher la clé technique des matieres et etudiant
(pour ne pas avoir trop de redondance, mais tu peux stocker le numero focntionnels plus simple rapide)
dans la table de notes
et une fois que tu as les deux cles
tu fais un insert dans la table des notes

Pas compliqué
0
cs_sarra0 Messages postés 25 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 9 mai 2010
4 mars 2008 à 10:21
Merci infiniment ;
moi j'ai déjà la table étudiant peuplée à l'aide d'un formulaire et mon fichier excel est chargé directement de la bd par les nom et numéro des étudiants moi j'insère les notes seulement chaque matière ds une colonnne donc si j'ai bien compris je rempli directement ma table note.
je te souhaite une grande réussite merci encore .......
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
4 mars 2008 à 12:37
Oui, tu remplis directement ta table note
les autres tables te serve de référence pour l'affichage par exemple.
0
cs_sarra0 Messages postés 25 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 9 mai 2010
4 mars 2008 à 12:52
j'ai trouvé ce code et j'ai modifié pour mes besoin














.








public



partial



class



Default2
: System.Web.UI.

Page

{







protected



void
Page_Load(

object
sender,

EventArgs
e){


OleDbDataAdapter
oAd =

new



OleDbDataAdapter
();


OleDbCommand
oCmd =

new



OleDbCommand
();


OleDbConnection
oCnx =

new



OleDbConnection
();


SqlDataAdapter
adapter =

new



SqlDataAdapter
();


SqlConnection
conn =

new



SqlConnection
(

@"Data Source=.\SQLEXPRESS;UID=sa;Password=xxx;Initial Catalog=essai"
);


string
sCnxString =

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+

"C:/azes.xls"
+

";Extended Properties="Excel 8.0;HDR=No;IMEX=1""
;







oCnx.ConnectionString = sCnxString;


oCmd.CommandText =




"SELECT * FROM [Feuil1$]"


oCmd.Connection = oCnx;

oAd.SelectCommand = oCmd;

 

adapter.SelectCommand =


new



SqlCommand
(

"SELECT * FROM ETUDIANT"
, conn); 


SqlCommandBuilder
builder =

new



SqlCommandBuilder
(adapter);adapter.InsertCommand = builder.GetInsertCommand();

adapter.DeleteCommand = builder.GetDeleteCommand();

adapter.UpdateCommand = builder.GetUpdateCommand();

conn.Open();


DataSet
oDs =

new



DataSet
(

"ExcelDataset"
);oAd.Fill(oDs,


"ETUDIANT"
);oAd.Update(oDs,


"ETUDIANT"
); 

GridView1.DataSource = oDs;

GridView1.DataBind();

conn.Close();

 

 

}}


 


le dataset fonctionne bien :ses données son bien affiché ds un  gridview par exemple; mais ils sont pas insérer ds la bd


 


 


 
0
yourse Messages postés 3 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 14 avril 2008
14 avril 2008 à 20:30
slt sara c younes j'espére ke tu va b1.
bref je ve recuperer un fichier excel a une base de données via ado  stp rpd dans le plus tot possible je te remercie bon courage et bonne chance 
0
yourse Messages postés 3 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 14 avril 2008
14 avril 2008 à 20:31
bjr a tous svp j'ai besoin de votre aide je ve importer un fichier excel a une bd sous sql server via vb.net svppp merci infiniment
0
cs_sarra0 Messages postés 25 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 9 mai 2010
22 avril 2008 à 13:17
Bonjour younes je suis vraiment desolée je viens de voir ton msg  parce que moi  j'ai laissé tomber l'histoire d'excel sqlserver ;jespère pouvoir t'aider


regarde ça   http://bytes.com/forum/thread124113.html
 http://davidhayden.com/blog/dave/archive/2006/05/31/2976.aspx
et http://support.microsoft.com/default.aspx/kb/321686
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=3207086&SiteID=1
0
Rejoignez-nous