[Débutant] Problème requête Update
Bonjour,
je voudrais mettre à jour une ligne d'une table de ma base de données. J'utilise pour cela un DetailsView.
La table est liée avec la table générée automatiquement aspnet_users via le champ user_id.
Voici le SqlDataSouce:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:csBD %>"
SelectCommand="SELECT * FROM [user_data] WHERE ([UserId] = @UserId)"
UpdateCommand="UPDATE [user_data] SET [nom] = @nom, [prenom] = @prenom, [adresse] = @adresse, [ville] = @ville, [pays] = @pays, [zip] = @zip WHERE [UserId] = @UserId">
<UpdateParameters>
<asp:Parameter Name="nom" Type="String" />
<asp:Parameter Name="prenom" Type="String" />
<asp:Parameter Name="adresse" Type="String" />
<asp:Parameter Name="ville" Type="String" />
<asp:Parameter Name="pays" Type="String" />
<asp:Parameter Name="zip" Type="String" />
</UpdateParameters>
</asp:SqlDataSource> |
Et voici le code behind ajoutant le paramètre UserId à la requête Select et Update:
Code:
1 2 3 4 5 6
|
protected void Page_Load(object sender, EventArgs e)
{
SqlDataSource1.SelectParameters.Add("UserId", Membership.GetUser().ProviderUserKey.ToString());
SqlDataSource1.UpdateParameters.Add("UserId", Membership.GetUser().ProviderUserKey.ToString());
} |
Le problème que je rencontre lorsque je fais la mise à jour est le suivant:
The variable name '@UserId' has already been declared. Variable names must be unique within a query batch or stored procedure. :(
Je ne comprends pas d'ou provient cette erreur d'autant que la ligne est mise à jour correctement. :?
Si vous pouviez m'aider ?
Merci.
Auré ;)