2013-06-13 2 views
3

나는 이것이 내가 당신을 위해 쉽게 될 것이라고 생각합니다. 나는 WFA 응용 프로그램을 만들고 있습니다. 나는 내 양식에 DataGridView가 있고 DataGridView에 SQL 테이블을 삽입하고 싶습니다. 여기에 제 코드가 있습니다 :DataGridView 및 SQL 테이블 바인딩

OracleCommand cmd = new OracleCommand(); 
     OracleDataReader reader; 
     cmd.Connection = conn; 

     cmd.CommandText = "select * from rezervacija where korisnicko_ime_posetioca = '" + kip + "'"; 
     cmd.CommandType = CommandType.Text; 
     reader = cmd.ExecuteReader(); 
     while (reader.Read()) 
     { 

     } 

이미 연결을 열었으므로 문제가되지 않습니다. 독자가 읽는 동안 데이터를 바인딩 할 수 있어야합니까?

+0

SQL 인젝션 공격을 피하기 위해 매개 변수화 된 SQL을 사용하는 것처럼 인라인 SQL을 사용하지 마십시오. – Cortright

+0

이 페이지를 참조하십시오 : http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.datasource.aspx –

답변

1

사용이 같은 OracleDataAdapter는 :

OracleDataAdapter yourAdapter = new OracleDataAdapter(); 
OracleCommand command = new OracleCommand("select * from rezervacija where korisnicko_ime_posetioca = :kip", conn); 

//Add your parameters like this to avoid Sql Injection attacks 
command.Parameters.AddWithValue(":kip", kip); 
yourAdapter.SelectCommand = command; 
DataSet yourDataSet = new DataSet("RezervacijaData"); 

yourAdapter.Fill(yourDataSet, "rezervacija"); 

//Finally do the binding 

yourDataGrid.SetDataBinding(yourDataSet, "Rezervacija"); 

이것은 일반적인 생각이다. 나는 코드를 테스트하지 않았으므로 개발 기계에 있지는 않지만 상당히 가까워 야한다.

관련 문제