Bonjour à tous,

je suis en train de mettre en place une petite cvtheque et j'ai la structure suivante au niveau de ma bd:
EMPLOYES(MATRICULE,NOMPRENOM)
EXPERIENCE_PRO(ID_EXP_PRO,MATRICULE,EMPLOYEUR,FONCTION,DATEDEB,DATEFIN)
FORMATION_INITIALE(IDFORMATIONINI,LIBELLEFORMATIONINI)
FORMATION_PRO(ID_FORMATION_PRO,MATRICULE,LIBELLE_FORMATION_PRO,DUREE_FORMATION_PRO)
SUIT(MATRICULE,IDFORMATIONINI,ANNEE_OBTENTION,ETABLISSEMENT,VILLE)

Au niveau de ma page aspx, j'ai un gridview dont le data source est un select sur la table SUIT. J'ai donc essayé d'afficher le libellé dans un dropdownlist plutôt que IDFORMATIONINI en joignant les tables SUIT et FORMATION_INITIALE. J'ai ensuite ajouté un lien "modifier". Jusque là, tout va bien.

Le problème c'est lorsque j'exécute et que je tente de modifier un élément de la drpdownlist, j'ai le message suivant "System.Data.Odbc.OdbcException: ERROR [42000] [Microsoft][ODBC SQL Server Driver][SQL Server]Erreur de conversion du type de données nvarchar en bigint"

Je précise qu'au niveau de la table SUIT, la clé primaire est composée de MATRICULE et IDFORMATIONINI

J'ai vraiment besoin de votre aide.

Voici mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
 
<asp:SqlDataSource ID="dsSuit" runat="server" 
                    ConnectionString="<%$ ConnectionStrings:cscvtheque %>" 
                    DeleteCommand="DELETE FROM [SUIT] WHERE [MATRICULE] = ? AND [IDFORMATIONINI] = ? AND (([ANNEE_OBTENTION] = ?) OR ([ANNEE_OBTENTION] IS NULL AND ? IS NULL)) AND (([ETABLISSEMENT_OBTENTION] = ?) OR ([ETABLISSEMENT_OBTENTION] IS NULL AND ? IS NULL)) AND (([VILLE] = ?) OR ([VILLE] IS NULL AND ? IS NULL)) AND (([DESC_FORMATION] = ?) OR ([DESC_FORMATION] IS NULL AND ? IS NULL)) AND (([OBTENTION_DIPLOME] = ?) OR ([OBTENTION_DIPLOME] IS NULL AND ? IS NULL))" 
                    InsertCommand="INSERT INTO [SUIT] ([MATRICULE], [IDFORMATIONINI], [ANNEE_OBTENTION], [ETABLISSEMENT_OBTENTION], [VILLE], [DESC_FORMATION], [OBTENTION_DIPLOME]) VALUES (?, ?, ?, ?, ?, ?, ?)" 
                    ProviderName="<%$ ConnectionStrings:cscvtheque.ProviderName %>" 
                    SelectCommand="SELECT SUIT.MATRICULE, SUIT.IDFORMATIONINI, SUIT.ANNEE_OBTENTION, SUIT.ETABLISSEMENT_OBTENTION, SUIT.VILLE, SUIT.DESC_FORMATION, SUIT.OBTENTION_DIPLOME, FORM.LIBELLEFORMATIONINI FROM SUIT SUIT, FORMATION_INITIALE FORM WHERE (FORM.IDFORMATIONINI=SUIT.IDFORMATIONINI) AND ([MATRICULE] = ?)" 
 
                    UpdateCommand="UPDATE [SUIT] SET [IDFORMATIONINI] = ?, [ANNEE_OBTENTION] = ?, [ETABLISSEMENT_OBTENTION] = ?, [VILLE] = ?, [DESC_FORMATION] = ?, [OBTENTION_DIPLOME] = ? WHERE ([MATRICULE] = ?) AND ([IDFORMATIONINI] = ?)" 
                    ConflictDetection="CompareAllValues" 
                    OldValuesParameterFormatString="original_{0}">
                    <DeleteParameters>
                        <asp:Parameter Name="original_MATRICULE" Type="String" />
                        <asp:Parameter Name="original_IDFORMATIONINI" Type="String" />
                        <asp:Parameter Name="original_ANNEE_OBTENTION" Type="Int32" />
                        <asp:Parameter Name="original_ANNEE_OBTENTION" Type="Int32" />
                        <asp:Parameter Name="original_ETABLISSEMENT_OBTENTION" Type="String" />
                        <asp:Parameter Name="original_ETABLISSEMENT_OBTENTION" Type="String" />
                        <asp:Parameter Name="original_VILLE" Type="String" />
                        <asp:Parameter Name="original_VILLE" Type="String" />
                        <asp:Parameter Name="original_DESC_FORMATION" Type="String" />
                        <asp:Parameter Name="original_DESC_FORMATION" Type="String" />
                        <asp:Parameter Name="original_OBTENTION_DIPLOME" Type="String" />
                        <asp:Parameter Name="original_OBTENTION_DIPLOME" Type="String" />
                    </DeleteParameters>
                    <InsertParameters>
                        <asp:Parameter Name="MATRICULE" Type="String" />
                        <asp:Parameter Name="IDFORMATIONINI" Type="String" />
                        <asp:Parameter Name="ANNEE_OBTENTION" Type="Int32" />
                        <asp:Parameter Name="ETABLISSEMENT_OBTENTION" Type="String" />
                        <asp:Parameter Name="VILLE" Type="String" />
                        <asp:Parameter Name="DESC_FORMATION" Type="String" />
                        <asp:Parameter Name="OBTENTION_DIPLOME" Type="String" />
                    </InsertParameters>
                    <SelectParameters>
                        <asp:ControlParameter ControlID="ddlmatri" Name="MATRICULE" 
                            PropertyName="SelectedValue" Type="String" />
                    </SelectParameters>
                    <UpdateParameters>
                        <asp:Parameter Name="original_IDFORMATIONINI" Type="String" />
                        <asp:Parameter Name="IDFORMATIONINI" Type="String" />
                        <asp:Parameter Name="ANNEE_OBTENTION" Type="Int32" />
                        <asp:Parameter Name="ETABLISSEMENT_OBTENTION" Type="String" />
                        <asp:Parameter Name="VILLE" Type="String" />
                        <asp:Parameter Name="DESC_FORMATION" Type="String" />
                        <asp:Parameter Name="OBTENTION_DIPLOME" Type="String" />
                        <asp:Parameter Name="original_MATRICULE" Type="String" />
                        <asp:Parameter Name="original_IDFORMATIONINI" Type="String" />
                        <asp:Parameter Name="original_ANNEE_OBTENTION" Type="Int32" />
                        <asp:Parameter Name="original_ANNEE_OBTENTION" Type="Int32" />
                        <asp:Parameter Name="original_ETABLISSEMENT_OBTENTION" Type="String" />
                        <asp:Parameter Name="original_ETABLISSEMENT_OBTENTION" Type="String" />
                        <asp:Parameter Name="original_VILLE" Type="String" />
                        <asp:Parameter Name="original_VILLE" Type="String" />
                        <asp:Parameter Name="original_DESC_FORMATION" Type="String" />
                        <asp:Parameter Name="original_DESC_FORMATION" Type="String" />
                        <asp:Parameter Name="original_OBTENTION_DIPLOME" Type="String" />
                        <asp:Parameter Name="original_OBTENTION_DIPLOME" Type="String" />
                    </UpdateParameters>
                </asp:SqlDataSource>
                <asp:GridView ID="GdFormationIni" runat="server" AutoGenerateColumns="False" 
                    DataSourceID="dsSuit">
                    <Columns>
                        <asp:BoundField DataField="MATRICULE" HeaderText="MATRICULE" 
                            SortExpression="MATRICULE" />
                        <asp:BoundField DataField="IDFORMATIONINI" HeaderText="IDFORMATIONINI" 
                            SortExpression="IDFORMATIONINI" />
                        <asp:BoundField DataField="ANNEE_OBTENTION" 
                            HeaderText="ANNEE_OBTENTION" SortExpression="ANNEE_OBTENTION" />
                        <asp:BoundField DataField="ETABLISSEMENT_OBTENTION" 
                            HeaderText="ETABLISSEMENT_OBTENTION" SortExpression="ETABLISSEMENT_OBTENTION" />
                        <asp:BoundField DataField="VILLE" HeaderText="VILLE" 
                            SortExpression="VILLE" />
                        <asp:BoundField DataField="DESC_FORMATION" HeaderText="DESC_FORMATION" 
                            SortExpression="DESC_FORMATION" />
                        <asp:BoundField DataField="OBTENTION_DIPLOME" 
                            HeaderText="OBTENTION_DIPLOME" SortExpression="OBTENTION_DIPLOME" />
                        <asp:BoundField DataField="LIBELLEFORMATIONINI" 
                            HeaderText="LIBELLEFORMATIONINI" SortExpression="LIBELLEFORMATIONINI" />
                        <asp:CommandField HeaderText="Modifier" ShowEditButton="True" />
                    </Columns>
                </asp:GridView>