Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

xanburzum

[Resolvido] Painel Remoto Sql

Recommended Posts

Executa qualquer comando SQL a partir da página ,permite listar suas tabelas / campos e uma referência SQL. Escrito para o SQL Server, mas deverá funcionar com qualquer DSN / DSN-less.

 

<%@LANGUAGE = VBScript%>
<object RUNAT="Server" ID="CONN" PROGID="ADODB.Connection">
</object>
<%
'Se você estiver usando pool de conexão 
' objeto pooling é chamado CONN 
'Se você não estiver usando o pool de conexão e, 
'Remover linhas 2 e 3 acima e, em seguida, descomente as próximas 2 linhas 
'dim CONN 
'set CONN = Server.CreateObject (" ADODB.Connection ") 


 'descomente as 3 linhas abaixo depois de 
'Definir esta variável em outra sessão antes da página com links para esta página 
'Caso contrário ninguém podia mexer com o seu banco de dados!
'if trim(session("validated")) <> "itsOK" then
'  response.redirect("http://www.seu_site.com.br.com")'>http://www.seu_site.com.br.com")
'end if


' Só no caso do seu servidor está lento ....
Server.ScriptTimeOut = 12000


'Estas 2 String de conexaun são colocadas aqui para um exemplo 
'Espero que você tenha definido o seu connectstrings no Global.asa, e não aqui! 
'Abaixo dos dois connectionstrings 
 
'Application (" suaConnectString ") =" DRIVER = SQL Server; SERVER = seu, server.com; DATABASE = seu banco; UID = your_user_id; your_user_id = USER; port = 1433; password= sua senha; " 
'OU 
'Se você estiver utilizando um DSN local, use uma seqüência como esta 
"Application (" suaConnectString ") =" DSN = seuDSN; "

%>
<html>

<head>
<title>System SQL </title>
</head>

<body>

<form method="POST" action="sys.sql.asp">
  <table border="0" width="100%" height="45">
	<tr>
	  <td width="100%" colspan="3" height="20"><strong><font face="Verdana" color="#0000A0">SQL
	  Engine</font></strong></td>
	</tr>
	<tr>
	  <td width="33%" height="17"></td>
	  <td width="33%" height="17"><div align="center"><center><p><a
	  href="http://msdn.microsoft.com/library/default.asp?URL=/library/psdk/sql/ts_tsqlcon_6lyk.htm"
	  target="_blank"><font face="Verdana" color="#0000A0"><small>SQL Reference</small></font></a></td>
	  <td width="34%" align="center" height="17"><div align="right"><p><a
	  href="sys.sql.asp?action=tables" target="_blank"><small><font face="Verdana"
	  color="#0000A0">Lista Tabela </font></small></a></td>
	</tr>
	<tr align="center">
	  <td width="100%" height="17" colspan="3" valign="middle" align="left"><div align="left"><p><br>
	  <font face="Verdana" color="#0000A0"><textarea rows="7" name="sql" cols="44"><%=request.form("sql")%></textarea></font></p>
	  </div><div align="left"><p><font face="Verdana" color="#0000A0"><input type="submit"
	  name="SUBMIT" value="Submit"><input type="reset" value="Reset" name="B2"></font></td>
	</tr>
	<tr align="center">
	  <td width="100%" height="17" colspan="3" valign="middle" align="left"><div align="right">
	  <strong><small><a href="http://www.seu site.com.br" target="_blank">@Corporation</a></small></strong><br>
	  <small>All rights Reserved.</small></small></font></td>
	</tr>
  </table>
</form>
<%


if request.querystring("action") = "tables" then
  call tables
end if


if request.form("SUBMIT") = "Submit" then
  call run_sql
end if


'###########################################

sub run_sql

  'as suas ConnectionString devem ser definidas no Global.asa. 
CONN.Open Application("YourConnectString")
sql = trim(request.form("sql"))
set rs = CONN.execute(sql)

 
if rs.state <> 0 then		   
if not rs.eof then			 
 while not rs.eof				  
 
  Response.Write "<P><font face=verdana color=navy size=2><br>"
 
	 for each field in rs.fields   'loop & imprimir nome e valor de cada campo no registro
		Response.Write "<B>" & field.name & "</B> = " & field.value 
		Response.Write "<br>" 
	 next
	 
  rs.movenext
  response.write "</P>" 
 wend
end if 'not rs.eof

else 

  response.write("<font face=verdana color=navy><B>SQL Applied.</B></font>")
  
end if ' rs.state <> 0
set rs = nothing

end sub 'run_sql
'###########################################

sub tables

response.write("<P><font face=verdana color=navy><B>Listando Tabelas...</B></font></P>")

CONN.Open Application("YourConnectString")
dim CONN2 
set CONN2 = Server.CreateObject("ADODB.Connection")

CONN2.ConnectionString = Application("YourConnectString")
CONN2.Open(Application("sua ConnectString"))

 
 ' nomes tabela
	set adoxConn = server.createobject("adox.catalog")
	set adodbConn = server.createobject("adodb.connection") 
	adodbConn.open CONN
	adoxConn.activeConnection = adodbConn 

	dim columnTypes(210) 
	columnTypes(2) = "SmallInt" 
	columnTypes(3) = "Integer" 
	columnTypes(6) = "Currency" 
	columnTypes(11) = "Boolean" 
	columnTypes(14) = "Decimal" 
	columnTypes(16) = "TinyInt" 
	columnTypes(129) = "Char" 
	columnTypes(131) = "Numeric" 
	columnTypes(135) = "DateTime" 
	columnTypes(200) = "VarChar" 
	columnTypes(203) = "Text"
	columnTypes(205) = "205"

for each table in adoxConn.tables

		if table.type="TABLE" then 
			ptable = table.name
		else
			ptable = ""
		end if

if ptable <> "" then
sql = "select TOP 1 * from " & ptable & vbcrlf
set rs = CONN2.Execute(sql)
  
	Response.Write "<P><font face=verdana color=navy size=2><B>" & ptable & "</b><br>"

	for each field in rs.fields
		Response.Write field.name & " is " & columnTypes(field.type) 
		if field.type = 129 or field.type=200 then 
		
			Response.write " (" & field.definedSize & ")" 
		end if 
		Response.Write "<br></P>" 
	next
	
end if
next ' for each table

set rs = nothing
end sub 
'###########################################
%>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.