📄 runquery.asp
字号:
<%
if len(Request.QueryString("page")) = 0 then
page = 1
else
page = cint(Request.QueryString("page"))
End If
%>
<!--#include file="top.asp"-->
<table WIDTH="750" bgcolor="#E7F1EC" cellspacing="1" cellpadding="0" border="0">
<tr>
<td width="200" valign="top"><!--#include file="left.asp"--></td>
<td width="550" valign="top">
<table WIDTH="100%" cellpadding="5" cellspacing="0">
<tr>
<td bgcolor="#339999" align="center" class="celltitle"><%=Request("db")%></td>
</tr>
<tr>
<td>
<br>
<table cellpadding="2" cellspacing="1" style="border:solid black 1pt;">
<%
on error resume next
set cn = server.CreateObject("ADODB.Connection")
cn.Open dsn
cn.Execute "use " & request("db")
if len(request("tb")) > 0 then
set rsPKey = server.CreateObject("ADODB.Recordset")
rsPKey.CursorLocation = 3
rsPKey.Open "show index from " & request("db") & "." & request("tb"), dsn, 2, 3
'figure out how many Primary keys there are and get the data off of those keys
if not rsPKey.EOF then
'we have keys, not necessarily primary
noKey = true
numKey = 0
dim pKey(9)
for i = 1 to rsPKey.RecordCount
if trim(rsPKey("key_name")) = "PRIMARY" then
noKey = false
numKey = numKey + 1
pKey(numKey) = rsPKey("column_name")
rsPKey.movenext
else
rsPKey.MoveNext
end if
next
end if
set rsPKey = nothing
end if
if len(request("vquery")) > 0 then
if lcase(left(request("vquery"), 6)) = "select" then
set rsQuery = server.CreateObject("ADODB.Recordset")
rsQuery.CursorLocation = 3
sql = request("vquery")
rsQuery.Open sql, cn, 2, 3
%>
<tr>
<td bgcolor="#339999" <%if err.number = 0 then%>colspan="<%=rsQuery.fields.count + 2%><%end if%>" class="cellsmalltitle" align="center">SQL Query Results</td>
</tr>
<tr>
<td class="cellsmallcontent" colspan="<%=rsQuery.fields.count + 2%>">
<b>Results for the query:</b> <%=request("vquery")%><br>
<a href="showdb.asp?db=<%=request("db")%>&tb=<%=request("tb")%>&q=<%=server.URLEncode(request("vquery"))%>" class="navlink">Edit Query</a> --
<a href="runquery.asp?db=<%=request("db")%>&tb=<%=request("tb")%>&vquery=<%=server.URLEncode(request("vquery"))%><%if len(request("ft")) = 0 then%>&ft=y<%end if%><%if len(request("Page")) > 0 then%>&page=<%=request("page")%><%end if%>" class="navlink"><%if len(request("ft")) > 0 then%>Show Text Summary<%else%>Show Full Texts<%end if%></a>
</td>
</tr>
<%
if err.number = 0 then
rsQuery.PageSize = 30
if rsQuery.EOF then
%>
<tr>
<td class="cellsmallcontent">
No Results from Query<br><br>
<a href="showdb.asp?db=<%=request("db")%>" class="navlink">Back</a>
</td>
</tr>
<%
Else
if rsQuery.pagecount > 1 then
%>
<tr>
<td colspan="<%=rsQuery.Fields.count + 2%>" class="cellsmallcontent">
<b>Page:
<%
for p = 1 to rsQuery.PageCount
if p = cint(page) then
Response.Write "<B>" & p & "</B> "
else
%>
<a class="navlink" href="runquery.asp?page=<%=p%>&db=<%=request("db")%>&tb=<%=request("tb")%>&vquery=<%=request("vquery")%><%if len(request("ft")) > 0 then%>&ft=y<%end if%>"><%=p%></a>
<%
end if
next
rsQuery.Move rsQuery.PageSize * page - rsQuery.PageSize
%>
</b>
</td>
</tr>
<%
else
%>
<tr>
<td colspan="<%=rsQuery.Fields.count%>">
</td>
</tr>
<%
end if
%>
<tr>
<td class="tinytitle" bgcolor="#339999">Edit</td>
<td class="tinytitle" bgcolor="#339999">Delete</td>
<%
for i = 0 to rsQuery.Fields.Count - 1
%>
<td class="cellsmallcontent" bgcolor="white"><b><%=rsQuery.Fields(i).Name%></b></td>
<%
next
%>
</tr>
<%
for q = 1 to rsQuery.pagesize
%>
<tr>
<%
if numKey > 0 then
for i = 1 to numKey
whereClause = pKey(i) & " = '" & rsQuery(pKey(i)) & "'"
if i < numKeys then
whereClause = whereClause & " and "
end if
next
else
for k = 0 to 3
if rsQuery.Fields.count > k then
whereclause = whereclause & rsQuery.Fields(k).Name & " = '" & rsQuery.Fields(k) & "' "
if k < 4 then
whereclause = whereclause & "and "
end if
else
k = 5
end if
next
if right(whereclause, 4) = "and " then
whereclause = left(whereclause, len(whereclause) - 4)
end if
end if
%>
<td align="center<%if q mod 2 = 0 then%>" bgcolor="white<%end if%>"><%if len(request("db")) > 0 and len(request("tb")) > 0 then%><a href="mod.asp?action=edit&db=<%=request("db")%>&tb=<%=request("tb")%>&whereclause=<%=server.URLEncode(whereClause)%>"><%end if%><img SRC="images/edit.gif" border="0" WIDTH="16" HEIGHT="16"><%if len(request("db")) > 0 and len(request("tb")) > 0 then%></a><%end if%></td>
<td align="center<%if q mod 2 = 0 then%>" bgcolor="white<%end if%>"><%if len(request("db")) > 0 and len(request("tb")) > 0 then%><a href="runquery.asp?db=<%=request("db")%>&tb=<%=request("tb")%>&vQuery=<%=server.URLEncode("delete from " & request("tb") & " where " & whereClause)%>"><%end if%><img SRC="images/deleteX.gif" border="0" WIDTH="16" HEIGHT="16"><%if len(request("db")) > 0 and len(request("tb")) > 0 then%></a><%end if%></td>
<%
for r = 0 to rsQuery.Fields.count - 1
%>
<td class="cellsmallcontent" nowrap<%if q mod 2 = 0 then%> bgcolor="white<%end if%>">
<%
'The replace statements prevent HTML in database from being displayed...
if len(request("ft")) = 0 then
if len(rsQuery(r)) > 30 then
Response.write replace(replace(left(rsQuery(r), 30) & "...", "<", "<"), ">", ">")
else
Response.write replace(replace(rsQuery(r), "<", "<"), ">", ">")
end if
else
Response.Write replace(replace(rsQuery(r), "<", "<"), ">", ">")
end if
%>
</td>
<%
next
rsQuery.MoveNext
if rsQuery.EOF then
q = rsQuery.PageSize
end if
%>
</tr>
<%
next
if rsQuery.pagecount > 1 then
%>
<tr>
<td colspan="<%=rsQuery.Fields.count + 2%>" class="cellsmallcontent">
<b>Page:
<%
for p = 1 to rsQuery.PageCount
if p = cint(page) then
Response.Write "<B>" & p & "</B> "
else
%>
<a class="navlink" href="runquery.asp?page=<%=p%>&db=<%=request("db")%>&tb=<%=request("tb")%>&vquery=<%=request("vquery")%><%if len(request("ft")) > 0 then%>&ft=y<%end if%>"><%=p%></a>
<%
end if
next
rsQuery.Move rsQuery.PageSize * page - rsQuery.PageSize
%>
</b>
</td>
</tr>
<%
else
%>
<tr>
<td colspan="<%=rsQuery.Fields.count%>">
</td>
</tr>
<%
end if
if len(request("tb")) > 0 then
%>
<tr>
<td colspan="<%=rsQuery.Fields.count%>">
<a href="mod.asp?action=insert&db=<%=request("db")%>&table=<%=request("tb")%>" class="navlink"><img SRC="images/insert.gif" border="0" WIDTH="16" HEIGHT="16">Insert New Row</a>
</td>
</tr>
<%
end if
end if
else
%>
<tr>
<td class="cellsmallcontent">
An Error Has Occured:<br><br>
<%=err.number%><br>
<%=err.Description%><br>
<%=err.Source%><br>
<%=request("vQuery")%>>
</td>
</tr>
<%
end if
else
cn.Execute request("vquery")
if err.number = 0 then
%>
<tr>
<td bgcolor="#339999" class="cellsmalltitle" align="center">SQL Query Results</td>
</tr>
<tr>
<td class="cellsmallcontent" width="250"><br>Successfully Completed Operation.<br><br>
</td>
</tr>
<tr>
<td class="cellsmallcontent" bgcolor="white"><b>Query:</b><br>
<%=request("vQuery")%><br><br></td>
</tr>
<tr>
<td><%if len(request("db")) > 0 and len(request("tb")) > 0 then%><a class="navlink" href="runquery.asp?db=<%=request("db")%>&tb=<%=request("tb")%>&vQuery=<%=server.URLEncode("select * from " & request("db") & "." & request("tb"))%>">Back To Table</a><%end if%></td>
</tr>
<%
else
%>
<tr>
<td class="cellsmallcontent">
An Error Has Occured:<br><br>
<%=err.number%><br>
<%=err.Description%><br>
<%=err.Source%><br>
<%=err.HelpContext%><br>
SQL = <%=request("vQuery")%>
</td>
</tr>
<%
end if
end if
end if
%>
</td>
</tr>
</table>
</td>
</tr>
</table>
<!--#include file="bottom.asp"-->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -