database
  • tsql
  • executenonquery
  • 2017-09-20 7 views 0 likes 
    0

    私はデータベースから値を削除する方法を書いていましたが、影響を受ける行をチェックすると値は0で、最初のif文にはどのアイデアも入り続けますか?データベースからの削除

     private void workstationDelete() 
        { 
         string query = "DELETE FROM test_revision2 where wsid = @wsid and location = '@location'"; 
         try 
         { 
          conn = new SqlConnection(connStr); 
          conn.Open(); 
    
          SqlCommand cmd = new SqlCommand(query, conn); 
          cmd.Parameters.AddWithValue("@wsid", Convert.ToInt32(wsid2text.Text)); 
          cmd.Parameters.AddWithValue("@location", deletelocation); 
          cmd.ExecuteNonQuery(); 
    
    
          int rowsaffected = cmd.ExecuteNonQuery(); 
    
          if (rowsaffected == 0) 
          { 
           lblDel.Text = "Sorry Workstation: " + wsid2text.Text + " does not exist in " + deletelocation + ". Therefore it cannot be removed."; 
          } 
          else 
          { 
           lblDel.Text = "You have successfully removed Workstation: " + Convert.ToInt32(wsid2text.Text) + " in " + deletelocation; 
          } 
    
          conn.Close(); 
    
         } 
    
         catch (SqlException) 
         { 
          lblDel.Text = "randome"; 
         } 
        } 
    

    答えて

    0

    '@location'から一重引用符を削除します。パラメータを無視して、文字列リテラルに一致させようとしています。

    脇に:good reasonsAddWithValueがありません。

    0

    問題は私がcmd.executeNonQueryを使用していたことです。最初のものは1回返していましたが、varに初期化すると0になります。

    関連する問題