设为首页
加入收藏
帮助中心
首页 | 红盾通告 | 信息中心 | ASP技术 | 数据库 | 网页设计 | 网管专栏 | OICQ攻略 | 墨客频道 | 网站运营 |
当前位置:首页 >> 数据库 >> SQL Server >> 正文
最新信息
·SQL2000做附加数据库时报:…
·数据库sql被挂马终极批量删…
·动网论坛全文索引建立帮助
·论坛不支持文章内容搜索的…
·打造抵御SQL注入攻击的MSS…
·10个保护SQL Server 2000安…
·sql server安全设置攻略
·SQL Server安全设置清单列…
·使用 SQL Server 时需要经…
·SQL中触发器实例讲解
资料搜索
热点信息
·如何压缩SQL Server 2000数…
·SQL中触发器实例讲解
·日志文件满而造成SQL数据库…
·10个保护SQL Server 2000安…
·使用 SQL Server 时需要经…
·SQL2000做附加数据库时报:…
·SQL SERVER的安全隐患:触…
·asp如何连接sql server并实…
·SQL Server不能启动的常见…
·一种简单的表中删除重复行…
推荐信息
·打造抵御SQL注入攻击的MSS…
·SQL Server数据库开发的二…
·Sqlserver 优化的方法
·SQLServer吞噬的内存解决办…
·SQL SERVER日志清除的两种…
·如何压缩SQL Server 2000数…
·SQL Server 2000 SP4发布
·动网论坛全文索引建立帮助
·10个保护SQL Server 2000安…
·SQL Server安全设置清单列…


Google
 
源码推荐——SQL SERVER结构浏览器
〖编辑:Cloudy | 浏览:人次〗

从老外那儿转帖过来的

很酷,只要修改几个参数就可以了,很有帮助

<%@ LANGUAGE = JScript %>
<%
var ConnStr= "DSN=admin"; //
var UserLogin= "sa"; // input empty Login and Password,
var UserPassword= ""; // if your DSN works via WinNT trust connection
var CharSet= "gb2312"; // as sample "windows-1251"
var PgSize= 10;
%>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=<%=CharSet%>">
<title>MS SQL Structure Viewer Version 1.2</title>
</head>
<body bgcolor=#2f2f2f link=#000000 vlink=#000000 alink=#000000 topmargin=1 leftmargin=1>
<table width='100%' bgcolor=gray cellpadding=0 cellspacing=0><td>
<table width='100%' cellpadding=0 cellspacing=1>
<tr><td align=center>
<font color=white size=+1><b>MS SQL WebTools >> Table Structure Viewer</b></font></td>
<td align=right>
<font color=black><small><b>written by
<a href="mailto:little@ivc.tagmet.ru">
<font color=black><small><b>Alexander Tkalich</b></small></a></b></small></font>
</td></tr>
</table>
</td>
</table>
<p>
<%
var trColor1= "#7f9faf", trColor2= "#bfcfd7";
var trColor= trColor1;

function isDef( Value){
if( Value== ( Value+ "")) return true;
return false;
}

function QOutSelect( Conn, Name, Value, FirstName, FirstValue, SQL, SSize){
var Rs= Conn.Execute( SQL);
Response.Write( "<select name='"+ Name+ "' size="+ SSize+ ">");
if( FirstName!= "")
Response.Write( "<option value='"+ FirstValue+ "'>"+ FirstName);
for( ; !Rs.EOF; Rs.MoveNext()){
Id= Rs( 0);
Nm= Rs( 1);
if( Value== ""+ Id) S= 'selected'; else S= '';
Response.Write( "<option value='"+ Id+ "' "+ S+ ">"+ Nm+ "\n");
}
Response.Write( "</select>");
}

var S, DbName, TbName, Tbl, Row;
if( !isDef( DbName= Request.Form( "DbName")))
DbName= Request.QueryString( "DbName");
if( !isDef( TbId= Request.Form( "TbId")))
TbId= Request.QueryString( "TbId");
Tbl= Request.QueryString( "Tbl");
Row= Request.QueryString( "Row")/ 1;
%>

<center>

<%
var Conn= Server.CreateObject("ADODB.Connection");
Conn.Open( ConnStr, UserLogin, UserPassword);

if( !isDef( Tbl)){
%>

<form name='f' method=post action='TbStru.asp'>
<input type=hidden name=CurrentDb value='<%=DbName%>'>
<table border=1 bgcolor=#7f9faf cellpadding=0 cellspacing=0><td>
<table border=0 cellpadding=8 cellspacing=0><tr valign=bottom><td align=center><b>Databases</b><br>

<%
QOutSelect( Conn, "DbName' onChange='document.f.submit();", DbName, "", "",
"select name, name from master.dbo.sysdatabases Order by name", 10);
Response.Write( '</td>');
if( isDef( DbName)){
Response.Write( '<td align=center><b>Tables & Views</b><br>');
QOutSelect( Conn, "TbId' onChange='document.f.submit();", TbId, '', '',
"select id, name from "+ DbName+ ".dbo.sysobjects where type in ('U','V') and category<>2 Order By Name", 10);
Response.Write( '</td>');
}
if( isDef( DbName)) S= 'Show structure';
else S= 'Show list of tables';
Response.Write(
"\n<td><table height='100%' border=0>\n"+
"<tr valign=bottom><td><input type=submit value='"+ S+ "'></td></tr>\n"+
"</table></td></tr></table></td></table></form><p>\n"
);
}

if( !isDef( CurrentDb= Request.Form( "CurrentDb")))
CurrentDb= Request.QueryString( "CurrentDb");
if( !isDef( Tbl)&& isDef( DbName)&& DbName+ ""== CurrentDb+ ""&& isDef( TbId)){
Rs= Conn.Execute(
"select O.name, U.name"+
" from "+ DbName+ ".dbo.sysobjects O, "+
DbName+ ".dbo.sysusers U"+
" where O.id="+ TbId+ " and U.uid=O.uid"
);
TbName= Rs( 0);
TbOwner= Rs( 1);
Response.Write(
"<a target='_blank' href='TbStru.asp?Tbl=["+ DbName+ "].["+ TbOwner+ "].["+ TbName+ "]&TbId="+ TbId+
"&DbName="+ DbName+ "'>"+
"<font color=white><b>"+ DbName+ "."+ TbOwner+ "."+ TbName+ "</b></font></a>\n"
);
Response.Write( "<br>\n");
Rs= Conn.Execute(
"select C.name, T.name, C.length, C.xprec, C.xscale,"+
" C.colstat, C.isnullable,"+
" case when C.autoval is null then 0 else 1 end,"+
" SC.text, "+
"( select CForgin.name+ ' of '+ '<a href=\"TbStru.asp?"+
"DbName="+ DbName+ "&CurrentDb="+ DbName+
"&TbName='+ O.name+ '&TbId='+ Convert( varchar, Sr.rkeyid)+ '"+
"\"><b>'+ O.name+ '</b></a>'"+
" from "+ DbName+ ".dbo.sysreferences Sr,"+
DbName+ ".dbo.sysobjects O,"+
DbName+ ".dbo.syscolumns CForgin"+
" where Sr.fkeyid="+ TbId+ " and Sr.fkey1=C.colid and Sr.rkeyid=O.id"+
" and CForgin.id=O.id and CForgin.colid=Sr.rkey1"+
") from "+ DbName+ ".dbo.syscolumns C, "+
DbName+ ".dbo.systypes T, "+
DbName+ ".dbo.syscomments SC "+
"where C.id="+ TbId+ " and C.xtype=T.xusertype and C.cdefault*=SC.id "+
"order by C.colid"
);
%>
<input type=hidden name=DbName value='<%=DbName%>'>
<input type=hidden name=CurrentDb value='<%=DbName%>'>
<input type=hidden name='TbId' value='<%=TbId%>'>
<table border=1 bordercolor=#5f5f5f bgcolor=#cfcfcf cellpadding=3 cellspacing=0>
<tr bgcolor=<%=trColor%>><th>Nn</th><th>Name</th><th>Type</th><th>length</th>
<th>precision</th><th>scale</th><th>default value</th><th>properties</th><th>relation</th></tr>
<%
for( TrColor= '', i= 1; !Rs.EOF; i++, Rs.MoveNext()){
if( trColor== trColor1) trColor= trColor2;
else trColor= trColor1;
%>
<tr bgcolor=<%=trColor%>>
<td bgcolor=<%=trColor2%> align=right><b><%=i%></b></td><td>
<%=Rs( 0)%></td>
<td align=right> <%=Rs( 1)%></td>
<td align=right> <%=Rs( 2)%></td>
<%
if( Rs( 1)== 'numeric'|| Rs( 1)== 'decimal'){
prec= Rs( 3);
scale= Rs( 4);
} else prec= scale= ' ';
colstat= "";
if( Rs( 7)== 1) colstat+= ", Identity";
if( Rs( 5)== 1) colstat+= ", Primary Key";
if( Rs( 6)== 1) colstat+= ", Nullable";
if( colstat== "")
colstat= " ";
else
colstat= colstat.substring( 2);
cdefault= Rs( 8);
if( !isDef( cdefault)) cdefault= " ";
else {
cdefault= ""+ cdefault;
cdefault= cdefault.substring( 1, cdefault.length- 1);
}
foreign= Rs( 9);
if( !isDef( foreign)) foreign= " ";
%>
<td align=right><%=prec%></td><td><%=scale%></td>
<td><%=cdefault%></td><td><%=colstat%></td><td><%=foreign%></td>
</tr>
<%
}
%>
</table>
<%
}
if( isDef( Tbl)){
Response.Write( "<font color=white><b>"+ Tbl+ "</b></font></a><br>\n");
Rs= Conn.Execute( "select count( *) from "+ Tbl);
RecordCount= Rs( 0);
Response.Write( "<font color=white>"+ RecordCount+ " Records total</font><br>");
Rs= Conn.Execute( "select * from "+ Tbl);
if( !isDef( Row))
Row= 0;
if( !Rs.EOF)
Rs.Move( Row);
%>
<table bgcolor=#9fbfcf border=1 cellpadding=1 cellspacing=0><tr bgcolor=#cfcfcf><th>N/n</th>
<%
var ColCount= Rs.Fields.Count;
for( i1= 0; i1< ColCount; i1++)
Response.Write( "<th>"+ Rs.Fields( i1).Name+ "</th>");
Response.Write( "</tr>\n");
Prev= Row- PgSize;
if( Prev< 0&& Row> 0) Prev= 0;
for( i= Row+ 1, Cntr= 0;
Cntr< PgSize&& !Rs.EOF;
Rs.MoveNext(), i++, Cntr++
){
if( trColor== trColor1) trColor= trColor2;
else trColor= trColor1;
%>
<tr bgcolor=<%=trColor%>>
<td bgcolor=<%=trColor2%> align=right><b><%=i%></b></td>
<%
for( i1= 0; i1< ColCount; i1++)
Response.Write( "<td>"+ Rs.Fields( i1).Value+ "</td>");
Response.Write( "</tr>\n");
}
if( Cntr> 0){
Response.Write( "<tr bgcolor=#cfcfcf><th>N/n</th>");
for( i1= 0; i1< ColCount; i1++)
Response.Write( "<th>"+ Rs.Fields( i1).Name+ "</th>");
Response.Write( "</tr>\n");
}
Response.Write( "</table>\n<table width='50%' border=0>");
if( Prev>= 0){
QS= new String( Request.QueryString);
Prev= QS.substring( 0, QS.lastIndexOf( "=")+ 1)+ Prev;
Response.Write( "<td><a href='TbStru.asp?"+ Prev+ "'><font color=white><b><< Previous</a> </b></font></td>\n");
}
if( !Rs.EOF){
QS= new String( Request.QueryString);
if( QS.lastIndexOf( "&Row=")+ 1)
Next= QS.substring( 0, QS.lastIndexOf( "=")+ 1)+ ( i- 1);
else
Next= QS+ "&Row="+ ( i- 1);
Response.Write( "<td align=right><a href='TbStru.asp?"+ Next+ "'><font color=white><b>Next >></b></font></a></td>\n");
}
Response.Write( "</table>");
}
%>


录入时间:2007-02-08 10:40:12 [打印本页] [关闭窗口] [返回顶部]
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

Copyright © 2006-2014 0733168.Com Inc All Rights Reserved
关于我们 | 广告合作 | 联系我们 | 法律声明 | 友情链接 | 意见反馈
本站所收录信息、社区话题、及本站所做之广告均属其个人行为,与本站立场无关
湘ICP备06008436号