質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

Transact-SQL

Transact-SQLはSybase ASEとMIcrosoft SQLサーバで対応されているSQLの機能拡張版です。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

Q&A

解決済

1回答

1389閲覧

sql server management studio で テーブルを更新すると画面に表示されなくなる。

nobita

総合スコア66

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

SQL Server

SQL Serverはマイクロソフトのリレーショナルデータベース管理システムです。データマイニングや多次元解析など、ビジネスインテリジェンスのための機能が備わっています。

Transact-SQL

Transact-SQLはSybase ASEとMIcrosoft SQLサーバで対応されているSQLの機能拡張版です。

.NET Framework

.NET Framework は、Microsoft Windowsのオペレーティングシステムのために開発されたソフトウェア開発環境/実行環境です。多くのプログラミング言語をサポートしています。

0グッド

0クリップ

投稿2020/08/11 08:13

お世話になっております。
現状おかしな挙動をしており悩んでおりますのでご質問させていただきます。

<環境>

  • MacBook pro (ブートキャンプにて Windows を走らせている)
  • SQL server 2017
  • Microsoft SQL server management studio 18
  • .Net Framework
  • C#

現在 SQL server の 一覧テーブルを一覧表示する画面アプリを .net framwork ・ C# を使って作成しております。
画面には表示というボタンがあり、ボタンを押すと テーブルの一覧が表示されるようにしたいのですが、現状下記のような現象が起きており、ここ1週間調べてもわかりません。。

SQL server の management studio から ストアドを実行して 一覧テーブルを更新します。
その更新したテーブルを Visual Studio から デバッグで起動して 一覧を表示するボタンをクリックします。
そうすると更新したテーブルの値が表示されません。。。
この状態で特になにも更新せず、シャットダウンして次の日の朝再度起動して デバッグ起動すると昨日表示されなかったテーブルデータが正常に表示されまます。

ただ。再度ストアドでテーブルを更新すると表示されなくなります。
この現象はどこに不具合があるのでしょうか?
ご教示お願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

YAmaGNZ

2020/08/11 08:20

「更新したテーブルの値が表示されません」ということは、例えばストアドで1に更新したはずなのだが、プログラムで表示すると0と更新前のデータが表示されるということですか? それとも、そのテーブルのデータが全く表示されないということですか? その際にエラーが発生している等ありますか? また、ストアドを実行した後SSMS上でデータを表示した場合は表示されるのですか?
sazi

2020/08/11 09:12 編集

そのストアドの実行ではコミットされていますか? 何をシャットダウンしているのですか?それとも単にSSMSを終了しただけの事を言われていますか?
nobita

2020/08/11 09:20

はい、正常に処理が行った場合に、 COMMIT TRANSACTION をして、 エラーがあった場合には、ロールバックするようにしてあります。 パソコンをシャットダウンしております。
YAmaGNZ

2020/08/11 10:42

SSMSにて表示されるのであれば、C#側のソースの提示をお願いします。
退会済みユーザー

退会済みユーザー

2020/08/11 12:14

ごく簡単な問題を再現できるサンプルコードをアップして、詳しく再現手順を書くということはできませんか?
guest

回答1

0

ベストアンサー

ストアド実行後に、プログラム側でselectしている内容をSSMSで実行してみてください。
正しく結果が返るなら、プログラムの初期処理で行われている処理が、一覧を表示するボタンの処理でも必要なのでしょう。

投稿2020/08/11 09:25

sazi

総合スコア25327

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nobita

2020/08/11 09:42

ストアドを実行して、一覧にデータがある状態で、 SSMS で 新しいクエリを作成して、 select * from 一覧 としたところ一覧データが正しく表示されております。 つまり、ボタン側を修正する必要があるということでよろしいのでしょうか_?
sazi

2020/08/11 11:36 編集

データを変更した後にプログラムを起動し、直後の確認でOKなら、起動したままでデータの状況が変った事にボタン押下後の処理が対応できていないのでしょうね。 プログラム起動後にデータの状況を取得したグローバル変数とかが、更新されていなとかじゃないのでしょうか? とはいえ、あくまで推測です。 細かくデバッグすれば解決する内容だと思いますけどね。
nobita

2020/08/11 23:47

ありがとうございました!! デバッグしながらボタン周りを確認した結果できました!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問