- - PR -
SQL更新時のエラーについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2009-01-09 09:59
お世話になります。長文ですみませんがアドバイスください。
ASP.NET C# です。 SQLに書き込む(UPDATE)のときに下記のようなエラーが出ます。 どうしたら更新可能になるか教えてください。 エラーメッセージ 「例外の詳細: System.Data.SqlClient.SqlException: 'nvarchar' 付近に不適切な構文があります。」 SqlDataSource2_Updating() がGridViewから更新のために呼ばれているときは、データは、正しく対象のデータのみ呼ばれて値が代入されています。ここを抜けると上記エラーとなり更新できません。 下記のコードに示した初期の更新に関して(ファイルAからB作成)は、問題なく更新されています。GridView からの更新ボタンによる更新がうまくいきません。 テーブルの定義は、項目を「varchar(xx)」で指定しています。 ここで、通常と違う処理として、@ページ表示時にAファイルからデータを読みBファイルを更新(UPDATE)、不足データは、(INSERT)処理をしてからAGridView に表示させています。 @の更新などの処理は、 if (!IsPostBack){ で初期のみ下記の更新をしています。
[ メッセージ編集済み 編集者: SL 編集日時 2009-01-09 10:01 ] | ||||
|
投稿日時: 2009-01-09 11:39
SQL Server Profilerを使う等して実際にどのようなSQL文が発行されているのかを確認し、その原因となる箇所を探すのがよさそうですね。
| ||||
|
投稿日時: 2009-01-09 13:33
お世話になります。
> SQL Server Profiler これが見つかりません。開発環境は、VS2005 です。 また、SQLは、Express Edition で SQL Server Management Studio Express です。 この、Management Studio 内のツールメニュにも見つかりません。 あるのは、「外部ツール」「ユーザー設定」「オプション」のみです。 http://www.atmarkit.co.jp/fwin2k/operation/sql2005ov03/sql2005ov03_04.html などあり有用に思いますが、どうやって起動しますか? 教えてください。 | ||||
|
投稿日時: 2009-01-09 13:46
SQL Server 2005 Express Edition には
SQL Server Profiler が付属していないようです。 オープンソースの Profiler があるので、 それを利用してはどうでしょうか? 「SQL Express Profiler」 http://code.google.com/p/sqlexpressprofiler/ 利用方法はこちらを参考にしてください。 http://www.atmarkit.co.jp/fdotnet/dotnettips/744sqlexpressprofiler/sqlexpressprofiler.html _________________ Nakamura Blog | ||||
|
投稿日時: 2009-01-09 15:11
お世話になります。
結論からいって回復しました。原因など不明です。理由は、色々あれやこれややってるうちに間違って GridView を消してしまい、再度作りこむことになって以前の現象が出なくなりました。 SQL Server Profiler について今後役に立ちそうなのでダウンロードし動かそうとしていますが、「run」ボタンを押すと下記のメッセージが出てトレースできません。 ここのリンクを見ても(たぶんこのページのID108)実行権限がない以外は、単にエラーの発生した場所のようだし..... 使用パソコンは、 Vista Home Premium です。 動かないので推測ですが、これって VC++ の Spy みたいにメッセージみたいなのを 追っかけていけるのですか? 教えてください。 「version: 0.1.468.59 exception: System.Data.SqlClient.SqlException: 'SYS.TRACES' の実行権限がありません。」 |
1