• Asp.net 在网页编写C#代码示例-- 一个简单的web MsSql 命令执行环境


    在给一个客户做的系统上,因为要对数据库进行查看,但之前都是用TeamView来连接到客户的服务器进行数据库操作的
    但最近客户那边的TeamView好像更改过密码导致我无法正常连接,而巧了客户的网官因为有事没有上班所以也法获取新的密码。
    因为业务原因急需查看数据库,所以就写了一个简单的SQl命令并部署到客户的服务器来通过Web执行Sql命令
    将ConnectonString更改为自己的数据库连接并保存为**.aspx即可
    <!DOCTYPE html>
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>exec mssql  command-HTL</title>
    </head>
    <%@ Page Language="C#" enableViewState="true" %>
    <%@ Import namespace="System" %>
    <%@ Import namespace="System.Data" %>
    <%@ Import namespace="System.Data.SqlClient" %>
    <script runat="server">
      protected void Button1_Click(object sender, EventArgs e)
        {
            if(txt_sql.Value.Length>0){
                string _ConnectionString=System.Configuration.ConfigurationManager.AppSettings["ConnectionString"];
                if(string.IsNullOrEmpty(_ConnectionString))
                {
                    Response.Write("ConnectionString is null<br>");
                    Response.End();
                }
    
                Response.Write("Sql Command:<br>"+txt_sql.Value);
                using (SqlConnection connection = new SqlConnection(_ConnectionString))
                {
                    using (SqlCommand cmd = new SqlCommand())
                    {
                        try{
                            cmd.Connection = connection;
                            cmd.CommandText = txt_sql.Value;
                            cmd.Connection.Open();
                            // exec select 
                            if(txt_sql.Value.ToString().ToLower().Contains("select "))
                            {
                                using(SqlDataAdapter sda=new SqlDataAdapter(cmd))
                                {
                                      DataTable dtable = new DataTable();
                                      sda.Fill(dtable);
                                      GridView1.DataSource=dtable;
                                      GridView1.DataBind();
                                }
                            }
                            //exec update,insert,delete,other 
                            else
                                cmd.ExecuteNonQuery();
                            Response.Write("<br>sql Command Success");
                        }
                        catch (Exception e1) { Response.Write(e1.Message); }
                        finally{
                            connection.Close();
                        }
                    }//end using sqlcommand
                }//end using SqlConnection
            }//end if
        }//end Button1_Click
    </script>
    <body>
        <center>
            <h1 style="color:red;">at  before executing Sql command , please backup database </h1>
        </center>
        <form id="form1" runat="server">
            <asp:GridView ID="GridView1" runat="server" ></asp:GridView><br>
            <textarea id="txt_sql" runat="server" style="80%;height:200px;"></textarea>
            <br>
              <asp:Button ID="btnAdd" runat="server" Text="Exec Sql" OnClick="Button1_Click" />
        </form>
    </body>
    </html>

    有图有真相:
     
    为了安全,将下面的配置添加到web.config文件并在服务品上添加相应的用户名和密码用于访问该文件
    如果要访问mssql.aspx文件则必须要用”WWW_mssql“ 账号进行登陆否则无法访问
    <locationpath="mssql.aspx">
    <system.web>
    <authorization>
    <allowusers=".WWW_mssql"/>
    <denyusers="*"/>
    </authorization>
    </system.web>
    </location>
    如果任务完成请将该文件删除,防止出现安全问题
     
    至于为何要在asp.net页面中直接编写C#代码?主要是简单,只是一个文件而已不需要重新编译Dll且不会对现有的系统有任何影响。
     
    参考(如何在Asp.net页面中直接编写C#代码 ):





  • 相关阅读:
    python基础之元组,集合
    python列表补充、循环
    python基础之字典、赋值补充
    python基础2
    基本数据类型
    计算机基础与计算机硬件总结
    python基础
    操作系统
    Django APP打包重用
    PyCharm 使用Github托管Django项目
  • 原文地址:https://www.cnblogs.com/huangtailang/p/4107900.html
Copyright © 2020-2023  润新知