2016-06-02 6 views
1

Visual Studio에서 C#을 사용하여 작업하고 있습니다. SQL Server의 다른 데이터베이스 테이블에서 Visual Studio 폼의 텍스트 상자로 데이터를 가져와야합니다. 데이터베이스 테이블에는 여러 행과 열이 있습니다. 값은 문자 및 실수 값입니다. 아래 코드를 사용하고 있습니다. 나는 텍스트 상자에 실제 가치를주지 않는다. 오류가없고 빈 텍스트 상자가 나타납니다. 나는 성격 가치를 얻을 수있다. 아무도 도와 줄 수 있습니까? 감사.SQL Server에서 Visual Studio의 텍스트 상자로 데이터를 가져 오는 방법

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 

     SqlConnection con = new SqlConnection("DataSource=192.146.1,5,1433;Network Library=DBMSSOCN;Initial Catalog=Estimator;User ID=id;Password=password;Trusted_Connection=True"); 

      con.Open(); 

      SqlCommand cmd = new SqlCommand("select * from Table1", con); 
      SqlDataReader dr = cmd.ExecuteReader(); 

      while (dr.Read()) 
      { 
       textBox1.Text = dr.GetString(1); 
       textBox2.Text = dr.GetString(2); 
       textBox2.Text = dr.GetString(3); 
      } 

      con.Close();  

     } 

     private void Form1_Load(object sender, EventArgs e) 
     { 
     } 
    } 
} 
+0

코드를 디버깅 할 때 while 루프를 입력합니까? –

+0

예, while 루프에 들어갑니다. 감사합니다. –

+1

www에 공개 IP 주소를 표시하지 마십시오. 질문을 수정하고 다른 것으로 변경하십시오. xxx.xxx.xxx.xxx처럼 – jonathana

답변

1

확실하지 당신이 작동하지 않는 이유하지만

How to display specific database entries into a textbox on a WinForm application

여러 작업 예제를 가지고이 유사한 게시 할 수 있습니다.

데이터 소스에 철자가 틀리거나 IP 주소에 숫자가 충분하지 않은 등 이상한 점이 있습니다.

+0

나는 아무것도 얻지 않습니다. 빈 텍스트 상자가 나타납니다. –

+0

내 코드에서 모든 것이 정확합니다. 이 페이지에는 데이터 소스 및 IP 주소를 올바르게 입력하지 않았습니다. –

0

SqlDataReader.GetString()real 데이터 형식을 암시 적으로 수락할지 모르겠습니다.

그러나, 그럼에도 불구하고, 나는 수정 거라고 당신이 같은 while : 실제로 SqlDataReader 나오는 것도이 있다면 당신이 볼 수

while (dr.Read()) 
     { 
      var c1 = dr.Item[0]; 
      var c2 = dr.Item[1]; 
      var c3 = dr.Item[2]; 
      textBox1.Text = dr.GetString(1); 
      textBox2.Text = dr.GetString(2); 
      textBox2.Text = dr.GetString(3); 
     } 

이 방법. 디버깅 프로세스를 돕기 위해서만이 작업을 수행합니다.

관련 문제