C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.38081 の関連記事表示

<< 0 >>
■38081  SQLServer2008での集計方法を教えてください
□投稿者/ ひでこ -(2009/07/06(Mon) 20:07:14)

    分類:[データベース全般] 

    お世話になります。
    先日データベースの件でお世話になりました。
    環境は Vista VisualC# SQLServer2008 です。
    集計方法の件での方法ですがデータベースの方での集計を選びました。
    ところがACCESSではうまくいったのですがSQLServerでうまくいきません

    private void kingDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
    {
          //この辺にどのように書くかわからない
    select code,name,nyuko,syukko,nyuko - syukko as 'zaiko' from king //SQLServerのクエリではこのSQL文でOKです
    }

    nyuko(入庫) - syukko(出庫) = zaiko(在庫) という式を完成させたいと思います。
    ボタンをクリックすると計算ができるようにしたいと思っています。
    また、クリックなしでも計算ができるようにしたいとも思っています。
    よろしくお願いします

親記事 /過去ログ65より / 関連記事表示
削除チェック/

■38088  Re[1]: SQLServer2008での集計方法を教えてください
□投稿者/ オショウ -(2009/07/06(Mon) 21:08:21)
    2009/07/06(Mon) 21:16:10 編集(投稿者)

    No38081 (ひでこ さん) に返信
    > nyuko(入庫) - syukko(出庫) = zaiko(在庫) という式を完成させたいと思います。
    > ボタンをクリックすると計算ができるようにしたいと思っています。
    > また、クリックなしでも計算ができるようにしたいとも思っています。
    > よろしくお願いします

      SQLの話なのか、DataGridViewの話なのか、どちらでしょう?

      DB的に行うならば、DataGridView上でのCellContentClickイベントとは
      関わらないし・・・

      DataGridViewのセルをクリックしたイベントで計算させたいのであれば、
      どちらかと言うとSQL文的な話ではないし・・・

      どっちで行いたいのでしょうか?
      またどういう表示をさせたいのでしょうか?

      付け加えるならば、ACCESSでうまくいっていたと言うのは、OleDbで
      できていたと言うことならば、SqlClientに置き換えるだけで、そう
      互換性の無い修正は無いので、ACCESSからSQL Serverに変更しても
      そのままDataGridViewに表示できますが・・・

    ※ 私ならば、SQL文でデータの取得と計算結果を1発で得て、その
      レコードをDataGridViewに表示する。と言う方法で実現しますが。
      表のセルをクリックすると言う行為に何か別の意図があるのでしょ
      うか?

    以上。
記事No.38081 のレス /過去ログ65より / 関連記事表示
削除チェック/

■38090  Re[2]: SQLServer2008での集計方法を教えてください
□投稿者/ ひでこ -(2009/07/06(Mon) 21:12:30)
    No38088 (オショウ さん) に返信
    > ■No38081 (ひでこ さん) に返信
    GridViewです。
    データベース上で集計をしたものをそのままGridViewに表示した
    いと思っています

    >>nyuko(入庫) - syukko(出庫) = zaiko(在庫) という式を完成させたいと思います。
    >>ボタンをクリックすると計算ができるようにしたいと思っています。
    >>また、クリックなしでも計算ができるようにしたいとも思っています。
    >>よろしくお願いします
    >
    >   SQLの話なのか、DataGridViewの話なのか、どちらでしょう?
    >
    >   DB的に行うならば、DataGridView上でのCellContentClickイベントとは
    >   関わらないし・・・
    >
    >   DataGridViewのセルをクリックしたイベントで計算させたいのであれば、
    >   どちらかと言うとSQL文的な話ではないし・・・
    >
    >   どっちで行いたいのでしょうか?
    >   またどういう表示をさせたいのでしょうか?
    >
    > 以上。
記事No.38081 のレス /過去ログ65より / 関連記事表示
削除チェック/

■38095  Re[3]: SQLServer2008での集計方法を教えてください
□投稿者/ オショウ -(2009/07/06(Mon) 21:46:30)
    > データベース上で集計をしたものをそのままGridViewに表示した
    > いと思っています
    
      それなら・・・
    
            private void button1_Click(object sender, EventArgs e)
            {
                Boolean bRet;
    
                using(SqlConnection SqlDB =new SqlConnection (GetDBConnectString())){
    
                    try
                    {
                        SqlDB.Open ();
                        bRet=true;
                    }catch{
                        bRet=false;
                    }
    
                    if (bRet)
                    {
                        StringBuilder sb;
    
                        sb = new StringBuilder();
    
                        sb.Length = 0;
                        sb.Append("select ");
                        sb.Append("code,");
                        sb.Append("name,");
                        sb.Append("nyuko,");
                        sb.Append("syukko,");
                        sb.Append("nyuko - syukko as 'zaiko' ");
                        sb.Append("from ");
                        sb.Append("king");
    
                        using (DataSet ds = new DataSet())
                        {
                            using (SqlDataAdapter da = new SqlDataAdapter())
                            {
                                using (SqlCommand sc = SqlDB.CreateCommand())
                                {
                                    sc.CommandType = CommandType.Text;
                                    sc.CommandTimeout = SqlDB.ConnectionTimeout;
                                    sc.CommandText = sb.ToString();
    
                                    da.SelectCommand = sc;
    
                                    da.Fill(ds, "king");
                                }
                            }
    
                            dataGridView1.DataSource = ds;
                            dataGridView1.DataMember = "king";
                            dataGridView1.Refresh();
                        }
    
                        SqlDB.Close();
                    }
                }
            }
    
            private String GetDBConnectString()
            {
                SqlConnectionStringBuilder sb;
    
                sb = new SqlConnectionStringBuilder();
    
                sb.DataSource ="LocalHost";
                sb.InitialCatalog ="TestDB";
                sb.IntegratedSecurity = false;
                sb.UserID ="hoge";
                sb.Password ="hogehoge";
                sb.ConnectTimeout = 10;
    
                return sb.ToString ();
    
            }
    
    ※ 実行確認しないままコード掲載しています。
      適宜修正願います。エラーしたらすいません・・・
    
    こんなんで如何?
    
    以上。
記事No.38081 のレス /過去ログ65より / 関連記事表示
削除チェック/

■38096  Re[4]: SQLServer2008での集計方法を教えてください
□投稿者/ オショウ -(2009/07/06(Mon) 21:52:51)
    追伸
    一応、動作確認しましたが、正しく集計結果も表示されました。

    以上。
記事No.38081 のレス /過去ログ65より / 関連記事表示
削除チェック/

■38094  Re[3]: SQLServer2008での集計方法を教えてください
□投稿者/ ひでこ -(2009/07/06(Mon) 21:43:38)
    No38090 (ひでこ さん) に返信
    > ■No38088 (オショウ さん) に返信
    >>■No38081 (ひでこ さん) に返信




    > --------------------------------
    nyuko | syukko | zaiko |
    --------------------------------
    100 | 20 | 80 |
    --------------------------------
    200 | 50 |150 |
    --------------------------------
    となるはずが

    > --------------------------------
    nyuko | syukko | zaiko |
    --------------------------------
    100 | 20 |   |
    --------------------------------
    200 | 50 |    |
    --------------------------------


    です。
    > データベース上で集計をしたものをそのままGridViewに表示した
    > いと思っています
    >
    > >>nyuko(入庫) - syukko(出庫) = zaiko(在庫) という式を完成させたいと思います。
    > >>ボタンをクリックすると計算ができるようにしたいと思っています。
    > >>また、クリックなしでも計算ができるようにしたいとも思っています。
    > >>よろしくお願いします
    >>
    >>  SQLの話なのか、DataGridViewの話なのか、どちらでしょう?
    >>
    >>  DB的に行うならば、DataGridView上でのCellContentClickイベントとは
    >>  関わらないし・・・
    >>
    >>  DataGridViewのセルをクリックしたイベントで計算させたいのであれば、
    >>  どちらかと言うとSQL文的な話ではないし・・・
    >>
    >>  どっちで行いたいのでしょうか?
    >>  またどういう表示をさせたいのでしょうか?
    >>
    >>以上。
記事No.38081 のレス /過去ログ65より / 関連記事表示
削除チェック/

■38097  Re[4]: SQLServer2008での集計方法を教えてください
□投稿者/ ひでこ -(2009/07/06(Mon) 21:52:53)
    No38094 (ひでこ さん) に返信
    > ■No38090 (ひでこ さん) に返信
    >>■No38088 (オショウ さん) に返信
    > >>■No38081 (ひでこ さん) に返信
    >
    すみません
    作成途中でアップしてしまいました


    --------------------------------
    nyuko | syukko | zaiko |
    --------------------------------
    100 | 20 | 80 |
    --------------------------------
    200 | 50 |150 |
    --------------------------------
    となるはずが

    --------------------------------
    nyuko | syukko | zaiko |
    --------------------------------
    100 | 20 |   |
    --------------------------------
    200 | 50 |    |
    --------------------------------

    となってしまいます
    SQLのnyuko - syukko = zaikoの計算式が表とセットでGridViewに移行して表示して欲しいのです
    素人でうまく説明できなくてすみません。



    >>データベース上で集計をしたものをそのままGridViewに表示した
    >>いと思っています
    >>
    >>>>nyuko(入庫) - syukko(出庫) = zaiko(在庫) という式を完成させたいと思います。
    >>>>ボタンをクリックすると計算ができるようにしたいと思っています。
    >>>>また、クリックなしでも計算ができるようにしたいとも思っています。
    >>>>よろしくお願いします
    > >>
    > >>  SQLの話なのか、DataGridViewの話なのか、どちらでしょう?
    > >>
    > >>  DB的に行うならば、DataGridView上でのCellContentClickイベントとは
    > >>  関わらないし・・・
    > >>
    > >>  DataGridViewのセルをクリックしたイベントで計算させたいのであれば、
    > >>  どちらかと言うとSQL文的な話ではないし・・・
    > >>
    > >>  どっちで行いたいのでしょうか?
    > >>  またどういう表示をさせたいのでしょうか?
    > >>
    > >>以上。
記事No.38081 のレス /過去ログ65より / 関連記事表示
削除チェック/

■38098  Re[5]: SQLServer2008での集計方法を教えてください
□投稿者/ ひでこ -(2009/07/06(Mon) 21:55:29)
    No38097 (ひでこ さん) に返信
    > ■No38094 (ひでこ さん) に返信
    >>■No38090 (ひでこ さん) に返信
    > >>■No38088 (オショウ さん) に返信
    >>>>■No38081 (ひでこ さん) に返信

    ありがとうございます
    送って頂いたコード試させていただきます


    >>
    > すみませんが
    > 作成途中でアップしてしまいました
    >
    >
    > --------------------------------
    > nyuko | syukko | zaiko |
    > --------------------------------
    > 100 | 20 | 80 |
    > --------------------------------
    > 200 | 50 |150 |
    > --------------------------------
    > となるはずが
    >
    > --------------------------------
    > nyuko | syukko | zaiko |
    > --------------------------------
    > 100 | 20 |   |
    > --------------------------------
    > 200 | 50 |    |
    > --------------------------------
    >
    > となってしまいます
    > SQLのnyuko - syukko = zaikoの計算式が表とセットでGridViewに移行して表示して欲しいのです
    > 素人でうまく説明できなくてすみません。
    >
    >
    >
    > >>データベース上で集計をしたものをそのままGridViewに表示した
    > >>いと思っています
    > >>
    > >>>>nyuko(入庫) - syukko(出庫) = zaiko(在庫) という式を完成させたいと思います。
    > >>>>ボタンをクリックすると計算ができるようにしたいと思っています。
    > >>>>また、クリックなしでも計算ができるようにしたいとも思っています。
    > >>>>よろしくお願いします
    >>>>
    >>>>  SQLの話なのか、DataGridViewの話なのか、どちらでしょう?
    >>>>
    >>>>  DB的に行うならば、DataGridView上でのCellContentClickイベントとは
    >>>>  関わらないし・・・
    >>>>
    >>>>  DataGridViewのセルをクリックしたイベントで計算させたいのであれば、
    >>>>  どちらかと言うとSQL文的な話ではないし・・・
    >>>>
    >>>>  どっちで行いたいのでしょうか?
    >>>>  またどういう表示をさせたいのでしょうか?
    >>>>
    >>>>以上。
記事No.38081 のレス /過去ログ65より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -