0

データベースのメンバーシップテーブルからメールを取得するテキストボックスがあります。ユーザーは自分の電子メールを編集して、新しい電子メールを更新できます。私の質問は、古いメールを新しいメールに置き換える方法です。SQLのクエリは何ですか?

SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Connection"].ConnectionString);
    SqlCommand cmd = new SqlCommand("Insert into aspnet_membership("i dont know how whether to write all columns or only email);

    cmd.CommandType = CommandType.Text;
    cmd.Parameters.AddWithValue("@email", Textbox2.Text);
4

6 に答える 6

3

私の質問は、古いメールを新しいメールに置き換える方法です。

UPDATEこの場合、 の代わりにが必要ですINSERT

   SqlCommand cmd = new SqlCommand("UPDATE aspnet_membership SET 
          email = @email WHERE userID = @userID", conn);
于 2012-09-12T07:45:41.497 に答える
2

これは、他の単純な更新 SQL クエリと同じように機能します。

update TableName set Columname = @Value where Username = @Value
于 2012-09-12T07:44:30.890 に答える
0

MSDNhttp ://msdn.microsoft.com/en-us/library/ms186862.aspxからこのリンクを確認してください

SELECT REPLACE('abcdefghicde'、'cde'、'xxx'); 行く

于 2012-09-12T07:46:11.543 に答える
0

あなたがUpdateEmailIDをしたいので、あなたのクエリは

SqlCommand cmd = new SqlCommand("Update aspnet_membership set email=@email where  UserID=@UserID");

これはうまくいくはずです。なぜなら、Insertあなたが試みているクエリは、古いレコードを更新するのではなく、常に新しいレコードを挿入するからです。

于 2012-09-12T07:46:41.863 に答える
0

これを試してください: UserId と、指定された既存のユーザーの既存の電子メール アドレスを置き換える新しい電子メールが必要になる場合があります。

SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Connection"].ConnectionString);
SqlCommand cmd = new SqlCommand("UPDATE aspnet_membership SET email = @newEmail WHERE UserID = @userID");

cmd.Connection = conn;
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@email", Textbox2.Text);
cmd.Parameters.AddWithValues("@UserId", YourUserId);

conn.open();
cmd.ExecuteNonQuery();
conn.close();
于 2012-09-12T07:49:57.410 に答える
0

クエリを挿入するのではなく、更新クエリを使用する必要があります。

ここで構文を参照してください:

http://www.w3schools.com/sql/sql_update.asp

于 2012-09-12T07:44:26.520 に答える