新卒から文系エンジニア→人材業界に転職した人のブログ

新卒から文系エンジニア→人材業界に転職。技術・スキルがないためブログを通して勉強。その後、IT業界の業界知識が活かせる人材業界へ。異業種×異職種の転職経験有り。

このエントリーをはてなブックマークに追加

【ASP.NET・C#】Datasetの作成とデータ参照 ②

【今回の紹介】

前回のメモをもう少しわかりやすく整理した。



【内容】


具体的には、


1.StringBuilderの使用
加えて、sql生成を高速に文字結合が行えるといわれているStringBuilderを使用するように修正。
※もちろんこんな短いsqlでは意味がないが。笑
 今現在所属するpjでもこの文字列結合クラスでは推奨されて使用されている。。

StringBuilderを使用してsqlを使って生成することについて
http://www.atmarkit.co.jp/fdotnet/dotnettips/029strcat/strcat.html

http://kuroeveryday.blogspot.jp/2014/06/SqlDtringBuilder.html



2.列名の指定

asで今回は指定した。
前回紹介したようにしたようにtablesetのプロパティに格納されている
colmnクラスの値を変更すれば、列名を変更できるだろう。
asで指定して変更するのか、それとも直接プロパティを書き換えていくのか
どんな違いがあるのか今度調べてみる



3.datatableのみで書く
 sql実行結果を表示させたいオブジェクトに対して、データソースを設定する際は、
 datatableを渡すだけも実行できるよう









以下、参考ソース

//db接続情報の設定
        string dbcn = ConfigurationManager.AppSettings["con.str"];
        //sqlの設定
        StringBuilder strb = new StringBuilder();
        strb.Append("select A as ");
        strb.Append(" \"1番目\" ");
        strb.Append(",B as ");
        strb.Append(" \"2番目\" ");
        strb.Append(" from table_1 ");



       //string sql = "select A as 1盤目 ,D as 2盤目 from table_2";
        //datatableを設定 テーブルのデータをいれる箱
        DataTable dt = new DataTable();
        //テーブルからデータを取得してきてくれるdatatableを取得 テーブルから接続情報と抽出条件をもとにデータを取得するポンプ
        SqlDataAdapter da = new SqlDataAdapter(strb.ToString(),dbcn);
        //sqlを実行し、結果をdatatableに格納する
        da.Fill(dt);
        GridView1.DataSource = dt;
        GridView1.DataBind();



<body>
    <form id="form1" runat="server">
      <asp:GridView ID="GridView1" runat="server">
        </asp:GridView>
    </form>
</body>
.hatena-module:nth-of-type(10) { background: transparent; } .hatena-module:nth-of-type(10) .hatena-module-title{ display: none; } .hatena-module:nth-of-type(10) .hatena-module-body { padding: 0; }