一般に、この SQL は小規模なデータベースでの使用にのみ適しています。また、ASP のループは、小規模なデータベースでは使用しないことをお勧めします。大規模なデータベースの場合は、王子に連絡して、専門家が作成した別の SQL クエリ ステートメントを依頼してください。この機能は、キーワードをインデックスとして使用し、データベース全体を検索し、そのキーワードが存在するテーブル名と列名を返します。 (これは素晴らしいことです...特に、侵入中にユーザー名とパスワードが格納されているテーブルが見つからない場合に便利です。キーワード admin を入力してフィールドを直接見つけることができれば...見る必要はありません。各テーブルを 1 つずつ。) そこで、そのステートメントに基づいて、将来のデータベースの検索を容易にするための ASP スクリプトを作成しました。
コードは次のとおりです。
次のようにコードをコピーします。
<%
'キーワードがデータベース内でどの位置にあるか(どのテーブルのどのカラムなのか)を確認する
'by oldjun(http://www.oldjun.com)
'huangzi(http://www.2chuizi.com)のSQLに基づく
Server.ScriptTimeout=999999999
応答.バッファ = true
エラー時は次へ再開
キーワード=リクエスト(キーワード)
if キーワード= then
response.write キーワードが必要です!
応答.終了
次の場合に終了
薄暗い
conn = Server.CreateObject(ADODB.Connection) を設定します
ディムコンストラ
'接続文字列、変更してください!
ConnStr=Driver={SQL SERVER};Server=localhost;UID=sa;PWD=sa;Database=master
Conn.open ConnStr
conn.execute(CREATE TABLE huangzi_table(id intidentity(1,1),biaoid int,biaoname nvarchar(1000)))
conn.execute(insert huangzi_table select [id],[name] from sysobjects where xtype='U')
set rs =conn.execute(huangzi_table から tnum として count(id) を選択)
tnum=rs(tnum)
rs.close
rs=何も設定しない
for i=1 から tnum
set rsbiao =conn.execute(id=&i&のhuangzi_tableからbiaoidを選択)
biaoid=rsbiao(ビアオイド)
set rst =conn.execute(biaoid=&biaoid& の huangzi_table から [biaoname] を選択)
tname=rst(ビアオネーム)
set rsl=conn.execute(select count([name]) as lnum from syscolumns where id=&biaoid&)
lnum=rsl(lnum)
j=1 から lnum まで
トップナンバー=j-1
set rslie=conn.execute(id=&biaoid& および [名前] が含まれていない syscolumns から上位 1 つの [名前] を選択
(id=&biaoid& の syscolumns から先頭の &topnum& [名前] を選択します))
liename=rslie(名前)
set rsresult=conn.execute([&tname&] から上位 1 件の [&liename&] を選択します。 where CAST([&liename&] AS NVARCHAR(1000))='&keyword&')
rsresult.bof または rsresult.eof の場合
'response.write Nothing-&tname&:&liename
'response.write <br>
それ以外
result=rsresult(嘘名)
response.write result&(&tname&:&liename&)
応答.書き込み <br>
次の場合に終了
rslie.close
setrslie=何もない
rs結果.閉じる
rsresult=何も設定しない
次
rsbiao.close
setrsbiao=何もない
最初に閉じる
setrst=何もしない
rsl.close
rsl=何も設定しない
次
conn.execute(DROP TABLE huangzi_table)
%>
注: 効率が非常に悪いため、使用中に一時停止が発生する可能性があります。コードは単純であり、技術的な内容は含まれていません。接続ステートメントを変更するとキャッシュの問題が発生します。ブラウザを再起動することをお勧めします。