
Visual Studio2015の Windows Forms アプリ
DataGridViewのデータをテキストボックスの値で検索しその条件にあった検索結果をDataGridViewに出す方法
色々調べたのですがそおそもSQL.AppendLineのところで指定することが間違っているのでしょうか??
C#
1 /// <summary> 2 /// 検索ボタン押下時 3 /// </summary> 4 public void SearchBtn_Click(object sender, EventArgs e) 5 { 6 // DataTableを作成 7 DataTable DT = new DataTable(); 8 OracleConnection Connect = new OracleConnection(); 9 10 // 接続文字列の設定 11 string ConnectionString = ConfigurationManager.ConnectionStrings["OracleDB"].ConnectionString; 12 Connect.ConnectionString = ConnectionString; 13 try 14 { 15 // DB接続する 16 Connect.Open(); 17 // 一覧取得用SQL文を作成 18 StringBuilder SQL = new StringBuilder(); 19 // inner join 指定した2つのカラムに基づく同じデータを合わせる。 20 // ORDER BY 指定したカラムのソート順でグループ枠で並び替える。 21 SQL.AppendLine("SELECT"); 22 SQL.AppendLine(" TS.tana_cd,"); 23 SQL.AppendLine(" MT.tana_nm,"); 24 SQL.AppendLine(" TS.item_cd,"); 25 SQL.AppendLine(" MI.item_nm,"); 26 SQL.AppendLine(" TS.in_out_date,"); 27 SQL.AppendLine(" TS.in_out_type,"); 28 SQL.AppendLine(" TS.in_out_quantity,"); 29 SQL.AppendLine(" TS.QUANTITY,"); 30 SQL.AppendLine(" MI.unit_name,"); 31 SQL.AppendLine(" TS.memo"); 32 SQL.AppendLine("FROM t_stock TS"); 33 SQL.AppendLine(" inner join m_tana MT"); 34 SQL.AppendLine(" on TS.tana_cd = MT.tana_cd"); 35 SQL.AppendLine(" inner join m_item MI"); 36 SQL.AppendLine(" on TS.item_cd = MI.item_cd"); 37//ここで指定しています。 SQL.AppendLine(" WHERE TS.tana_cd = 'RackCode.Text ' and TS.item_cd = 'ItemCode.Text' and TS.in_out_type = 1 and TS.IN_OUT_DATE = '2018/01/01'"); 38 SQL.AppendLine("ORDER BY"); 39 SQL.AppendLine(" TS.tana_cd,"); 40 SQL.AppendLine(" TS.item_cd,"); 41 SQL.AppendLine(" TS.in_out_date,"); 42 SQL.AppendLine(" TS.in_out_type"); 43 44 // テーブルソースからデータを取得する 45 var DA = new OracleDataAdapter(SQL.ToString(), Connect); 46 // SQL文の結果をDaTaTableに格納する 47 DA.Fill(DT); 48 49 // DataGridViewにDataTableをセット 50 DataGrid.DataSource = DT; 51 // DB接続解除 52 Connect.Close(); 53 } 54 catch (OracleException ex) // Exception(Oracle Ver.) アプリの実行中に起きるエラーを表す 55 { 56 // エラーが起きたときにメッセージを表示させる。 57 MessageBox.Show("エラーが起きました!"); 58 } 59


回答1件
あなたの回答
tips
プレビュー