三流君のソースコード置き場

三流プログラマーが作成したコードが置いてあります。あまり参考にならないと思いますがヨロシクお願いします。

挨拶・自己紹介:
失敗続きのAB型の変わり者 :三流プログラマー Ken3です
フリーのエンジニア・個人事業主です・・と書くと聞こえはイイが(それとなくカッコよく聞こえるが)、 現在は小さな案件の受注請負 と 短期派遣 で 日々つつましく?ほそぼそと暮らしてます。
(※詳細は[三流君 三流プログラマーとは?]を見てください)


広告:


[記事一覧、バックナンバーを見る]

SQL ORDER BYでデータの並べ替え

元の三流解説は、
三流君ASP:SQL ORDER BYでデータの並べ替え
↑を見て、笑ってやってください。
ブログに過去のソースコードをアップして、ブログの検索機能で利用してます(利用予定です)
※古くさいコードが多いです・・・



ORDER BYでF_TITLEを基準に並べ替える ソースコード

<%@LANGUAGE=VBScript%>
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-sjis">
<title>ORDER BYでF_TITLEを基準に並べ替える</title>
</head>
<body>
<h1>ORDER BYでF_TITLEを基準に並べ替える</h1>
test028-1.asp<br>
Set rs = db.Execute("Select * From TEST <strong>ORDER BY F_TITLE</strong>")<br>
とSQL文を発行。
<hr>
<%
  'ADO DB Connection オブジェクトを作成する、英文そのままじゃん
  Set db=Server.CreateObject("ADODB.Connection")

  '.Provider?プロバイダー?通信会社?じゃなくって
  'データアクセスにはJet.OLEDB.4.0を使うことを設定
  db.Provider = "Microsoft.Jet.OLEDB.4.0"

  '次に、接続DBの位置を渡すので、Server.MapPathで変換して渡す
  db.ConnectionString = Server.MapPath("db026.mdb")

  'やっとデータベースを開ける
  db.open

  'お約束のレコードセットの作成 テーブル名TESTから全項目(*)を指定
  'ORDER BY F_TITLEを追加しただけです。
  Set rs = db.Execute("Select * From TEST ORDER BY F_TITLE")

  'データの表示をテーブルで行う
  Response.Write "<TABLE Border='1'>"

  '見出しをバカっぽく、そのまま書き込む
  Response.Write "<TR>"
  Response.Write "<TD>ID</TD>"
  Response.Write "<TD>F_TITLE</TD>"
  Response.Write "<TD>F_MEMO</TD>"
  Response.Write "<TD>WriteTime</TD>"
  Response.Write "</TR>"

  'お約束のEOFまでループは(データが無くなるまでループ)、
  Do While rs.EOF = False   'レコードセットの.EOFがFalseの間
    Response.Write "<TR>"   '内容を表示する
    Response.Write "<TD>" & rs.Fields.Item("ID") & "</TD>"
    Response.Write "<TD>" & Server.HTMLEncode(rs.Fields.Item("F_TITLE")) & "</TD>"
    Response.Write "<TD>" & Server.HTMLEncode(rs.Fields.Item("F_MEMO")) & "</TD>"
    Response.Write "<TD>" & rs.Fields.Item("WriteTime") & "</TD>"
    Response.Write "</TR>"
    '次のレコードにポインタを移動する
    rs.MoveNext    'これを忘れると悲惨なことに、、、
  Loop

  Response.Write "</TABLE>"  'テーブルは終わりです

  '開いていたレコードセットを閉じる
  rs.Close

  'データベースも閉じようよ
  db.Close

  'お行儀よくオブジェクトも開放しましょう(通常は自動的に解放されるけど)
  Set db = Nothing

%>
<hr>
終了です。<br>
<A href="test026-1.asp">test026-1.asp db026.mdb内のデータを確認する</a><br>
<A href="test027-2.asp">test027-2.asp データを追加する</a><br>
<A href="test028-2.asp">test028-2.asp IDを降順で並べ替え</a><br>

</body>
</html>

↑をテスト実行する→ http://www.ken3.org/cgi-bin/test/test028-1.asp実行する



SQL ORDER BYで並べ替え DESCでIDの降順 ソースコード

<%@LANGUAGE=VBScript%>
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-sjis">
<title>SQL ORDER BYで並べ替え DESCでIDの降順</title>
</head>
<body>
<h1>SQL ORDER BYで並べ替え DESCでIDの降順</h1>
test028-2.asp<br>
IDの降順で並べたいので、<br>
Set rs = db.Execute("Select * From TEST ORDER BY ID <strong>DESC</strong>")<br><strong>DESC</strong>を付けてORDERします。(SQLを発行します)<br>
<hr>
<%
  Server.ScriptTimeout = 20     '90以下はダメらしいけど・・・

  'ADO DB Connection オブジェクトを作成する、英文そのままじゃん
  Set db=Server.CreateObject("ADODB.Connection")

  '.Provider?プロバイダー?通信会社?じゃなくって
  'データアクセスにはJet.OLEDB.4.0を使うことを設定
  db.Provider = "Microsoft.Jet.OLEDB.4.0"

  '次に、接続DBの位置を渡すので、Server.MapPathで変換して渡す
  db.ConnectionString = Server.MapPath("db026.mdb")

  'やっとデータベースを開ける
  db.open

  'お約束のレコードセットの作成 テーブル名TESTから全項目(*)を指定
  'ORDER BY ID DESCを追加しただけです。
  Set rs = db.Execute("Select * From TEST ORDER BY ID DESC")

  'データの表示をテーブルで行う
  Response.Write "<TABLE Border='1'>"

  '見出しをバカっぽく、そのまま書き込む
  Response.Write "<TR>"
  Response.Write "<TH>ID</TH>"
  Response.Write "<TH>F_TITLE</TH>"
  Response.Write "<TH>F_MEMO</TH>"
  Response.Write "<TH>WriteTime</TH>"
  Response.Write "</TR>"

  'お約束のEOFまでループは(データが無くなるまでループ)、
  Do While rs.EOF = False   'レコードセットの.EOFがFalseの間
    Response.Write "<TR>"   '内容を表示する
    Response.Write "<TD>" & rs.Fields.Item("ID") & "</TD>"
    Response.Write "<TD>" & Server.HTMLEncode(rs.Fields.Item("F_TITLE")) & "</TD>"
    Response.Write "<TD>" & Server.HTMLEncode(rs.Fields.Item("F_MEMO")) & "</TD>"
    Response.Write "<TD>" & rs.Fields.Item("WriteTime") & "</TD>"
    Response.Write "</TR>"
    '次のレコードにポインタを移動する
    rs.MoveNext    'これを忘れると悲惨なことに、、、
  Loop

  Response.Write "</TABLE>"  'テーブルは終わりです

  '開いていたレコードセットを閉じる
  rs.Close

  'データベースも閉じようよ
  db.Close

  'お行儀よくオブジェクトも開放しましょう(通常は自動的に解放されるけど)
  Set db = Nothing

%>
<hr>
終了です。<br>
<A href="test026-1.asp">test026-1.asp db026.mdb内のデータを確認する</a><br>
<A href="test027-2.asp">test027-2.asp データを追加する</a><br>
<A href="test028-1.asp">test028-1.asp TITLEで並べ替え</a><br>
</body>
</html>

↑をテスト実行する→ http://www.ken3.org/cgi-bin/test/test028-2.asp実行する


コードの三流解説は、
三流君ASP:SQL ORDER BYでデータの並べ替え
↑を見て、笑ってやってください。