2017-02-22 1 views
-2
の「System.InvalidOperationExceptionが」
  SqlConnection tr = new SqlConnection("Data source =MR-GHOST\\SQLEXPRESS ; DataBase =trdatabase; Integrated Security= true;"); 
      SqlCommand cmd; // بمكننا من تعدبل على الداتا حذف اضاقة تعديل من خلال برنامج 
      SqlDataReader red; 

      private void button5_Click(object sender, EventArgs e) 
      { 
      try 
      { 
       cmd = new SqlCommand("Select Title , Author , Publish_date ,pages From books_tables Where ID='"+textBox1+"'",tr); 
       // select هو الاستعلام الخاص ب البحث 
       tr.Open(); 
       red = cmd.ExecuteReader(); //نربط داتا ريدر ب سمد لتنفيد الكوموند 
       red.Read(); // نفوم ب عملبة القراءة 
       textTitle.Text = red["Title"].ToString(); 
       textAuthor.Text = red["Author"].ToString(); 
       textdate.Text = red["publish_date"].ToString(); 
       textpages.Text = red["pages"].ToString(); 
      } 
      catch(SqlException pro) 
      { 
       MessageBox.Show(pro.Message,"error",MessageBoxButtons.OK,MessageBoxIcon.Error); 
      } 
      finally 
      { 
       tr.Close(); 
       red.Close(); 
      } 
+2

textBox1.Textを使用する可能性が高いことを前提に、現時点で行っていることが非常に良い方法ではないので、パラメータ化されたSQLを調べると述べました。 –

答えて

0

textBox1テキストボックスにタイプTextBoxの目的です。

オブジェクトを含む文字列を追加すると、そのオブジェクトの対応する.ToStringメソッドが自動的に呼び出されます。その場合は、"System.Windows.Forms.TextBox, Text: "のようなものが返されます。

あなたが代わりにtextBox1.Text使うべき

"SELECT ... ID='System.Windows.Forms.TextBox, Text: [WITHYOURTEXTHERE]'"、のようなので、あなたのコマンドが見えます。

関連する問題