新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > Web开发 > Asp教程 > 正文:一个简单的SQL语句执行器

一个简单的SQL语句执行器

新客网 XKER.COM 2003-04-20 来源: 收藏本文
大至分为三个文件:ljmdb.asp(连接库文件)、entice.asp(sql语句执行主界面)、entice2.asp(select记录集)

====================================ljmdb.asp
<%
set conndb=server.createobject("ADODB.CONNECTION")
constr="provider=microsoft.jet.oledb.4.0;data

source="&server.mappath("/aspsky.myip.org/entice.mdb")
conndb.open constr
%>
'这是连接access的,把数据库的地址改成你自己的地址就行了

====================================entice.asp
<%
if left(trim(request("sqllanguage")),6)="select" then
%>
<script language=javascript>
window.open("entice2.asp?sql=<%=request("sqllanguage")%>","","height=450,width=600,resizable=yes,

scrollbars=yes,status=no,toolbar=no,menubar=no,location=no")
</script>
<%
end if
%>
<!--#include file=ljmdb.asp-->
<%
%>
<HTML>
<Title>SOL语句执行示例 </Title>
<style type="text/css">
<!--
body { font-size: 12px}
table { font-size: 12px}
-->
</style>
<Body Bgcolor=#009999>
<%
sqllanguage=Request("sqllanguage")
%>
<Form Name="FormPst" Method="Post" Action="entice.asp">
<div align="center"><FieldSet> <Legend>请输入SQL语句</Legend> 指令:
<Input type="text" name="sqllanguage" Size=60>
<Input type="Submit" Value="送出">
</FieldSet> </div>
</form>
<Hr>
SQL 语句执行情况:

<%
if sqllanguage<>Empty then
On Error Resume Next
conndb.Execute(sqllanguage)
if err.number="0" then
message1="执行成功"
response.write message1
else
message1=err.description
response.write message1
err.clear
end if
end if
%>



<%
set rstable=conndb.openSchema(20)
rstable.movefirst
%>
<table width="95%" border="0" cellspacing="1" cellpadding="3" align="center" bgcolor="#000000">
<%
do while not rstable.eof
if rstable("table_type")="TABLE" then
%>
<tr bgcolor="#006400">
<td width="18%" nowrap><font color="#FFFFFF">数据库中的表名</font></td>
<td width="82%" nowrap> <font color="#FFFFFF">
<%

response.write rstable("table_name")
%>
</font></td>
</tr>
<tr bgcolor="#CCCCCC">
<td width="18%" nowrap>该表中的所有字段</td>
<td width="82%" nowrap>
<%
set rstobj=server.createobject("adodb.recordset")
rstsql="select * from "&rstable("table_name")
rstobj.open rstsql,conndb,1
for i=0 to rstobj.fields.count-1
response.write rstobj(i).name&"|"
next
rstobj.close
set rstobj=nothing
%>
</td>
</tr>
<%
end if
rstable.movenext
loop
rstable.close
set rstable=nothing
%>
</table>
</Body>
</HTML>
<%
conndb.close
set conndb=nothing
%>


=====================================entice2.asp
<Title>select查询器====entice</Title>
<style type="text/css">
<!--
body { font-size: 12px}
table { font-size: 12px}
-->
</style>

<Body Bgcolor=#009999>
<!--#include file=ljmdb.asp-->
<%
rstsql=request("sql")
response.write "你的查询语句为:"&rstsql&"
下面是您所查询的记录集"
set rstobj=server.createobject("adodb.recordset")
rstobj.open rstsql,conndb,1
response.write ",共查到"&rstobj.recordcount&"条记录"
fcount=rstobj.fields.count
response.write "<table width='98%' border='0' cellspacing='1' cellpadding='3' align='center'

bgcolor='#000000'><tr bgcolor='#006400'>"
for i=0 to fcount-1
response.write "<td><font color='ffffff'>"&rstobj(i).name&"</font></td>"
next
response.write "</tr>"
do while not rstobj.eof
response.write "<tr bgcolor='#cccccc'>"
for i=0 to fcount-1
response.write "<td>"&rstobj(i)&"</td>"
next
response.write "</tr>"
rstobj.movenext
loop
response.write "</table>"
rstobj.close
set rstobj=nothing
conndb.close
set conndb=nothing
%>

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐