• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ASP でオートナンバー型の数値を拾いたい)

ASPでオートナンバー型の数値を拾いたい

hequilの回答

  • ベストアンサー
  • hequil
  • ベストアンサー率65% (242/372)
回答No.1

SQL="SELECT * FROM Master WHERE((Master.SerialNo)=" &_ Request.QueryString("SerialNo") & ")" とか? オートナンバー型のフィールドサイズを長整数型にしていると思うのですが、この場合、WHERE句で比較する値をシングルクォート(’)で囲むとエラーになります。 逆にテキスト型の場合は、付けなくてはいけないので エラーにならなかったものだと思います。 外しているかもしれませんが、参考までに

naru
質問者

お礼

ご回答ありがとうございました。 まさしく・・・そのとおりでした。ちゃんと動きました。 感謝するも、ただただ絶句です。 シングルクォートの意味すら知らないで、よくASPに とりかかったなと、我ながらこの先が思いやられます(笑) 助かりました。m(__)m

関連するQ&A

  • ASPでRecordCountが使用できない(2)

    前回、指示をされた内容ででテストを試みましたがやはり、結果は-1 Set db1=Server.CreateObject("ADODB.Connection") db1.Provider="Microsoft.Jet.OLEDB.4.0" db1.ConnectionString=Server.MapPath("../master.mdb") db1.Mode=1 db1.Open ' Set rs1=Server.CreateObject("ADODB.Recordset") Rs1.Pagesize = 5 ' keyword = "ABC" ' SQL1a = "SELECT top 5 * FROM dbFILE WHERE dbTABEL Like '%" & Keyword & "%'" Set Rs1=db1.Execute(SQL1a) Rs1.CursorType = adOpenKeySet intP = Rs1.RecordCount Response.Write "RecordCount = " & intp & "<BR>" MSDNの説明でRecordCountなど参照しましたが理解不足でしょうか ? 宜しく、お願いします。

  • ASPでRecordCountが使用できない

    Accessの100件のデータを10行づつブラウザに表示したいのですが、rs.PageCount、rsRecordCountなど色々と試しましたが正しい結果が得られず 困っています。 rs.AbsolutePage、Rs.PageSizなども試してみましたが、やはり結果は-1しか返されません。 Set db1=Server.CreateObject("ADODB.Connection") db1.Provider="Microsoft.Jet.OLEDB.4.0" db1.ConnectionString=Server.MapPath("../master.mdb") db1.Mode=1 db1.Open ' Set rs1=Server.CreateObject("ADODB.Recordset") Rs1.Pagesize = 5 ' keyword = "ABC" ' SQL1a = "SELECT top 5 * FROM dbFILE WHERE dbTABEL Like '%" & Keyword & "%'" Set Rs1=db1.Execute(SQL1a) Response.Write rs1.PageCount このようなリストで試しています。よき方法があれば是非 教えて下さい。 最終的にはSQL 7.0に置き換える予定です。 宜しく、お願いします。

  • mdbを直接開いてもasp側に影響を与えない方法について

    お世話になります。当方、Windows Server 2003 R2 SP1 で IIS6.0 を使用しています。 サーバ側に設置しているmdbファイルをODBCでシステムDSNに登録し、ASPから 接続しております。 メンテナンスなどで直接mdbファイルを開いている時に、ASPのページに アクセスすると以下のエラーメッセージが出て正常表示が出来なくなります。 ======================================================== HTTP 500.100 - 内部サーバー エラー - ASP エラー インターネット インフォメーション サービス -------------------------------------------------------- エラー タイプ Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] '(不明)' は既に使用されているので、使用できませんでした。 ======================================================== mdbファイルを直接開いても、ASP側でもエラー表示されないように するにはどうしたらよいでしょうか? ソースは以下のようにしております。 Set cnn=Server.CreateObject("ADODB.Connection") cnn.open "dummy" cnn.close cnn.open "testdb"  '// ODBCをtestdbにしています。 SQL = "SELECT * FROM M_USER ORDER BY USERID" Set rs1 = cnn.Execute(SQL) よろしくお願いいたします。

  • SQL文が実行できません

    単純なSQLの実行命令なのですが、 下記のエラーメッセージが出て実行できません。 解消方法をご存知の方がいらっしゃいましたら、 教えてください。よろしくお願いします。 エラーメッセージ: Microsoft OLE DB Provider for ODBC Drivers (0x80040E10) [Microsoft][ODBC Microsoft Access Driver] パラメータが少なすぎます。1 を指定してください。 /x_db/1.asp, line 12 (Set RS = db.Execute(SQL)のラインがエラーです) ソースです。 <% Set db = Server.CreateObject"ADODB.Connection") db.Open "x_db" SQL = "select * from x_db where w_xpc ='" & Request.Form("F01") &"'" Set RS = db.Execute(SQL) Response.Write(RS.Fields("氏名")) RS.close set RS = nothing db.close set db = nothing %> 環境:WIN200server IIS5.0 access97

  • IIS7でIIS6で動いていたASPアプリを動かしたい

    初めまして、santa51と申します 表題の通り、IIS7でASPアプリを動かしたいのですが、 動きません。 xpのIIS6では動いていました エラーの内容は Microsoft OLE DB Provider for ODBC Drivers エラー '80004005' [Microsoft][ODBC Microsoft Access Driver] ディスクまたはネットワークのエラーです。 /????/?????/login.asp, 行 109 となります 109行は 107 DBName="Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.Mappath("../cgi-bin/mydb/" & campany & "/master.mdb") 108 Set db=Server.CreateObject("ADODB.Connection") 109 db.Open DBName です。 確認がとれていることは 1.Server.Mappath("../cgi-bin/mydb/" & campany & "/master.mdb")は確実にあっています。 環境は vista business IIS7 access2003 です。 以上、よろしくお願いします santa51

  • Access2000のデータをASPで表示させるには?

    間違ってソースを全部消してしまって、記憶を頼りに戻してみたのですが、Accessのデータの表示方法がわからなくなってしまいました。 ↓これがそのソースです <%@ LANGUAGE="VBScript" %> <% Option Explicit %> <Html> <Head> </Head> <Body> <% Dim db,rs,sql Set db = Server.CreateObject("ADODB.Connection") db.Open ("db1")←データベース名入れるんですよね? sql = "Select id,namae,n_yomigana,juusyo,j_yomigana From table1 where db1" Set rs = db.Execute (sql) Response.Write rs.fields("id") Response.Write "<br>" Response.Write rs.fields("namae") Response.Write "<br>" Response.Write rs.fields("n_yomigana") Response.Write "<br>" Response.Write rs.fields("juusyo") Response.Write "<br>" Response.Write rs.fields("j_yomigana") Response.Write "<br>" rs.close db.close %> </Body> </Html> ソースを丸ごと載せてしまってごめんなさい、読みにくいですよね。 足りないところや直し方が思い出せなくて困っています。 ご迷惑おかけしますが、アドバイスお願いします。

  • ASPでのSQLインジェクション対策

    ASPにて、ADOでAccessにアクセスする際にSQLインジェクション対策はどのようにしたらよいでしょうか。 現状は以下の様にしています。(name)は画面から受け取ったパラメータです。 Set aConn = CreateObject("ADODB.Connection") aConn.Provider = "Microsoft.Jet.OLEDB.4.0" aConn.ConnectionString = Server.MapPath("DB.mdb") aConn.open SQL = "SELECT A FROM TBL WHERE NAME = " & name ...... 宜しくお願いします

  • VBSの中で書くSQL文の記述方法

    よろしくお願いします。 select * from db1 into id,password,date,name where db1_id = **** and db1_password = **** and db1_date = 99999999; (db1_id,db1_password,db1_dateがプライマリキー) db1という表からプライマリキーに該当したデータを取り出し、 変数に格納したいと思っています。 このSQL文をASPのVBSの中で実現する方法を教えてください。 <% Dim Conn,SQL,RS Dim id Dim password Dim date Dim name db1=server.mappath("db1.mdb") DBName="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & db1 Set Conn = Server.CreateObject("ADODB.Connection") Conn.open DBName SQL = "select * from db1" INTO = "into id,password,date,name" WHERE = "where db1_id = **** and db1_password = **** _ and db1_date = 99999999" SQL = SQL & INTO & WHERE & ";" Set RS = Server.CreateObject("ADODB.Recordset") RS.Open SQL, Conn,3,3 %> これでうまくいくかな~と思ったのですが・・・。

  • ASPでExcelのセルに罫線、色付け

    WebサーバーにExcelがセットアップされてないので、 Set rs=Server.CreateObject("ADODB.Recordset") を使用し、Excelオブジェクトを作成後、 接続文字列、SQLを渡して、レコードセットを開きました。 strSQL = "select * from DATA_RANGE" Rs.Open strSQL, Con, 0 '0=adOpenForwardOnly 以下のようにして、Excelに値をセットすることはできたのですが、 rs.Fields(0).Value = "AAA" 罫線や、色をつける方法がわかりません。 どうかご教授ください。

  • ASP更新・変更ができない

    毎々お世話になってます。 ASP(VBScript)で更新・変更ができないのです。 db.Execute(StrSQL) 部分でエラーになり、 //db.Execute(StrSQL) を使用しない状態にするとエラーは出ませんが、更新・変更ができません。 <% //DB接続 Set ObjConn = Server.CreateObject("ADODB.Connection") ObjConn.Open "Driver={Microsoft Access Driver (*.mdb)};" & _ "DBQ=" & Server.Mappath("dbname.mdb") // 1. SELECT文:SELECT * FROM テーブル名 // 2. INSERT文:INSERT INTO テーブル名 (フィールド名) VALUES (値) // 3. UPDATE文:UPDATE テーブル名 SET フィールド名=値 // 4. DELETE文:DELETE * FROM テーブル名 //データ変更 //--- 追加する文字列を変数にセット --- uID = Request.Form("uID") uTYPE = Request.Form("uTYPE") uNAME= Request.Form("uNAME") uMNAME = Request.Form("uMNAME") //--- データ変更SQL --- SQLstr = "UPDATE " & tablename & " SET " SQLstr = SQLstr & "[uID]=#" & uID & "#," SQLstr = SQLstr & "[uTYPE]=" & uTYPE & "," SQLstr = SQLstr & "[uNAME]=" & uNAME & "," SQLstr = SQLstr & "WHERE ID=" & uID //--- データ追加実行 --- db.Execute(StrSQL) //DB接続解除 ObjConn.Close Set ObjConn = Nothing %>