• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        SQL SERVER結構瀏覽器

        SQL SERVER結構瀏覽器

        更新時間:2022-05-06 文章作者:未知 信息來源:網絡 閱讀次數:

        從老外那兒轉帖過來的

        很酷,只要修改幾個參數就可以了,很有幫助

        <%@ 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 &gt;&gt; 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>&nbsp;
                <%=Rs( 0)%></td>
                <td align=right>&nbsp;<%=Rs( 1)%></td>
                <td align=right>&nbsp;<%=Rs( 2)%></td>
        <%
                if( Rs( 1)== 'numeric'|| Rs( 1)== 'decimal'){
                    prec= Rs( 3);
                    scale= Rs( 4);
                } else prec= scale= '&nbsp;';
                colstat= "";
                if( Rs( 7)== 1) colstat+= ", Identity";
                if( Rs( 5)== 1) colstat+= ", Primary Key";
                if( Rs( 6)== 1) colstat+= ", Nullable";
                if( colstat== "")
                    colstat= "&nbsp;";
                else
                    colstat= colstat.substring( 2);
                cdefault= Rs( 8);
                if( !isDef( cdefault)) cdefault= "&nbsp;";
                else {
                    cdefault= ""+ cdefault;
                    cdefault= cdefault.substring( 1, cdefault.length- 1);
                }
                foreign= Rs( 9);
                if( !isDef( foreign)) foreign= "&nbsp;";
        %>
                <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>&lt;&lt; Previous</a>&nbsp;&nbsp;&nbsp;</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 &gt;&gt;</b></font></a></td>\n");
            }
            Response.Write( "</table>");
        }
        %>

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 中文字幕免费在线观看| jyzzjyzz国产免费观看| 4虎永免费最新永久免费地址| 亚洲成AV人片在线观看| 国产亚洲精品国看不卡| 成年大片免费高清在线看黄| 999国内精品永久免费观看| 精品久久亚洲中文无码| 久久这里只精品热免费99| 亚洲AV中文无码乱人伦下载| 久久成人免费播放网站| 亚洲理论片中文字幕电影| 特级做A爰片毛片免费69| 亚洲狠狠婷婷综合久久蜜芽| 91大神在线免费观看| 亚洲伊人久久大香线蕉在观| 成全视频免费高清 | 一级午夜免费视频| 亚洲情侣偷拍精品| 日韩成人免费视频| 亚洲视频在线观看2018| 一级做a毛片免费视频| 久久影视国产亚洲| 日韩精品无码免费一区二区三区 | 国产一级在线免费观看| 日本久久久久亚洲中字幕| 在线视频网址免费播放| 久久久久亚洲AV无码专区首JN| 中文字幕无码一区二区免费| 在线观看国产区亚洲一区成人| 亚洲色欲啪啪久久WWW综合网| 亚洲国产人成精品| jizzjizz亚洲日本少妇| 中文字幕第一页亚洲| 在线观看的免费网站无遮挡 | 亚洲性无码一区二区三区| 成人亚洲综合天堂| 青青免费在线视频| 亚洲日韩国产精品乱| 最近中文字幕电影大全免费版| 国产精品亚洲专区一区|