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

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

C# と VB.NET の入門サイト

Re[4]: ASPのUPDATEの記述の仕方


(過去ログ 25 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■11400 / inTopicNo.1)  ASPのUPDATEの記述の仕方
  
□投稿者/ ryu (5回)-(2007/12/13(Thu) 11:18:25)

分類:[.NET 全般] 

あまりにも初歩的なことで大変申し訳ありませんが、
力を貸していただきたく投稿しました。

やりたいこと:DBをUPDATEで更新をしたい

環境
OS:Windows XP PRO
SQL Server 2005

****************************
〜省略
<% On Error Resume Next
   name = Request.Cookies("name")
   id = Request.Cookies("id")
   pro_id = Request.Cookies("pro_id")
   full_name = Request.Cookies("full_name")
   project_name = Request.Cookies("project_name")
   report_date = Request.Cookies("report_date")
   report_id = Request.Cookies("report_id")

   operation_time = Request.Cookies("operation_time")
   work_time = Request.Cookies("work_time")
   wtrbl_time = Request.Cookies("wtrbl_time")
   topics = Request.Cookies("topics")
   progress = Request.Cookies("progress")
   troublef = Request.Cookies("troublef")
   trouble = Request.Cookies("trouble")
   figure1 = Request.Cookies("figure1")
   figure2 = Request.Cookies("figure2")
   figure3 = Request.Cookies("figure3")
   text1 = Request.Cookies("text1")
   text2 = Request.Cookies("text2")
   text3 = Request.Cookies("text3")

   adcn.Open "pubs", "sa", ""
   adcd.ActiveConnection = adcn
   Set adpm = adcd.CreateParameter("user_name",129)
   adpm.Value = user_name
   adpm.Size = Len(adpm.Value)
   adcd.Parameters.Append adpm

   Dim sql_up
   sql_up = "update [QA2].[dbo].[report] set [pro_id] = '" & pro_id & "',[date] = '" & report_date & "',[user_id] = '" & id & "',[operation] = '" & operation_time & "',[work_flow] = '" & work_time & "',[wtrbl] = '" & wtrbl_time & "',[topics] = '" & topics & "',[progress] = '" & progress & "',[trouble_figure] = '" & troublef & "',[trouble] = '" & trouble & "',[figure1] = '" & figure1 & "',[figure2] = '" & figure2 & "',[figure3] = '" & figure3 & "',[text1] = '" & text1 & "',[text2] = '" & text2 & "',[text3] = '" & text3 & "' WHERE [report_id] = '" & report_id & "'"

   adcn.Execute sql_up
   adrs.Open adcd, ,3,1,1
   adrs.Close
   adcn.Close
 %>
〜省略
****************************
Cookieからデータを取得をしていることは確認しているので、
ASPでのUPDATE文の記述に問題がありそうな気がしているのですが…

ご指導ご鞭撻のほどよろしくお願いします。

引用返信 編集キー/
■11402 / inTopicNo.2)  Re[1]: ASPのUPDATEの記述の仕方
□投稿者/ 囚人 (254回)-(2007/12/13(Thu) 11:21:30)
sql_up を画面に出力してみると実際に発行するクエリが得られますよね。で、それを SQL Server Management Studio などで発行してみる。
そうしたら、クエリに問題があるかないかがわかりますよ。
引用返信 編集キー/
■11404 / inTopicNo.3)  Re[2]: ASPのUPDATEの記述の仕方
□投稿者/ ryu (6回)-(2007/12/13(Thu) 11:28:04)
No11402 (囚人 さん) に返信
> sql_up を画面に出力してみると実際に発行するクエリが得られますよね。で、それを SQL Server Management Studio などで発行してみる。
> そうしたら、クエリに問題があるかないかがわかりますよ。

囚人様

ご返答ありがとうございます。

実際に画面に出力し、それを実行してみたところ、無事にUPDATEされました。
ということは、

***********************
adcn.Execute sql_up
adrs.Open adcd, ,3,1,1
adrs.Close
adcn.Close
***********************

このあたりの記述の問題なのでしょうか?
引用返信 編集キー/
■11406 / inTopicNo.4)  Re[3]: ASPのUPDATEの記述の仕方
□投稿者/ ryu (7回)-(2007/12/13(Thu) 11:42:09)
> 囚人様

解決いたしました。

単純な記述ミスでした。

Set adcn = Server.CreateObject("ADODB.Connection")
Set adcd = Server.CreateObject("ADODB.Command")
Set adrs = Server.CreateObject("ADODB.Recordset")

のかきわすれというミスでした。


ご迷惑をおかけしました。

今後とも、ご指導ご鞭撻いただければ幸いです。

本当にありがとうございました。
引用返信 編集キー/
■11407 / inTopicNo.5)  Re[4]: ASPのUPDATEの記述の仕方
□投稿者/ ryu (8回)-(2007/12/13(Thu) 11:42:28)
No11406 (ryu さん) に返信
>>囚人様
>
> 解決いたしました。
>
> 単純な記述ミスでした。
>
> Set adcn = Server.CreateObject("ADODB.Connection")
> Set adcd = Server.CreateObject("ADODB.Command")
> Set adrs = Server.CreateObject("ADODB.Recordset")
>
> のかきわすれというミスでした。
>
>
> ご迷惑をおかけしました。
>
> 今後とも、ご指導ご鞭撻いただければ幸いです。
>
> 本当にありがとうございました。
解決済み
引用返信 編集キー/
■11409 / inTopicNo.6)  Re[3]: ASPのUPDATEの記述の仕方
□投稿者/ Mr.T (144回)-(2007/12/13(Thu) 11:49:18)
Mr.Tです、こんにちは。

解決したようですが、
> ***********************
> adcn.Execute sql_up
> adrs.Open adcd, ,3,1,1
> adrs.Close
> adcn.Close
> ***********************
>
> このあたりの記述の問題なのでしょうか?

Executeで、SQLの実行をしているのに、adrs.OpenでレコードセットのOpenをしているのは
どうしてですか?
単なるコピペミスなら、そこは無駄な処理です。
引用返信 編集キー/
■11412 / inTopicNo.7)  Re[4]: ASPのUPDATEの記述の仕方
□投稿者/ ryu (9回)-(2007/12/13(Thu) 12:57:10)
Mr.T様

お世話になります。

> Executeで、SQLの実行をしているのに、adrs.OpenでレコードセットのOpenをしているのは
> どうしてですか?
> 単なるコピペミスなら、そこは無駄な処理です。


すみません、記述ミスです。
要らない部分が書いてありました。
ご指摘ありがとうございます。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -