MSDN에서 찾았다.

컬럼을 지정해 주지 않고는 GridView에 데이터가 표현이 되지 않아서 어떻게 할까 했다

가변적으로 변하는 컬럼들의 이름과 타입때문에 직접받아와서 해 보고 했지만..

내키지 않아서 찾아본 결과.. 좋은 예가 있었다.

그 코드 내용은 다음과 같다.

OracleDataAdapter dataAdapter = new OracleDataAdapter("select * from test_khw", _connectionString);
                OracleCommandBuilder commandBuilder = new OracleCommandBuilder(dataAdapter);
                DataTable table = new DataTable();
                table.Locale = System.Globalization.CultureInfo.InvariantCulture;
                dataAdapter.Fill(table);
                dataGridView1.DataSource = table;*/
                //dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);

데이터 베이스 종류를 바꿔서 이용할때는 각기 맞는 클래스로 변경해서 해 주면 출력이 된다.
foreach문을 돌려서.. -_-

 얻어냈다.

Column에 대한 데이터를 난 그동안 무식하게도 -_-;; Reader를 통해서 했는데..

ADO.NET.. 강하다..

-_- 단지.. col(컬럼).DataType 하면 다 나왔다 -_-;;

다들 알고는 있을 것이다.

데이터 베이스의 필드의 값들은 타입이 정해져있다는 것을.

보통 System.String이나 System.Decimal 타입을 많이 쓴다.

물론 bool도 쓰겠지만 필자가 쓰는 경우는 저런 경우가 대다수라서..

다른 사항은 DataType에 대해서 직접 당겨써보면 알 것이다.


그동안 솔직히 이걸 얻기위해서 미련하게도

Column에대한 루프를 돌려서 Row와 Column 을 통해서 얻었다..

하지만.. -_-..

오늘 테스트 해 본결과 -_-; 난 역시 모르는게 많았다.

그 코드가 반 이상 줄 줄은..

-_- 지금은 정신이 몽~ 롱 한 관계로 코드는 내일 올려야겠다.

필자처럼 삽질하는 사람이 없기를 바라며..
ADO.NET을 요새 자주 이용한다

SqlConnection conn = new SqlConnectint(연결문);
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandString = 쿼리;
SqlDataAdapter Adapter = new SqlDataAdapter();
Adapter.SelectCommand = cmd;
DataSet DS = new DataSet();
Adapter.Fill(DS,"테이블명");
데이터 그리드뷰.DataSource = DS.Tables[테이블명].DefaultView;

이런 식으로 이용한다.

솔직히 주로 ListView라던지 List를 이용해서 데이터를 보여주고 했었다.

Java를 할 경우 JTable을 이용해서 보이곤 했었는데

이놈을 접하니.. -_-b 라는 표현 밖에 안나온다;;

왜!! 엄청 편하니까!!

하지만 바인딩을 잘못시키면.. 전혀 의외의 결과가 나온다.

CheckBox를 포함하는 형으로 만들면서 잠시 멍하게 있었었다.

체크 유무를 가져오는 방법을 몰랐었기 때문이다 -_-

근데.. 의외로 간단한 면도 많았다.

데이터그리드.Rows[][].Value 를 하면

True와 False를 반환한다.

다음에 좀 더 많은 부분을 해보고 여기서 이만.. 줄여야겠다.