>-----Mensaje original-----
>Me dicen que exite un forma de ejecutar un procedimiento
>almacenado desde visual basic y pasar los parametros
>para generar un reporte
>.
>
Si lo ejecutas desde el Query Analizer
Exec custOrderHist 'ALFKI' --Cualquier ID de cliente
Desde VB.net
Me.SqlCommand1 = New System.Data.SqlClient.SqlCommand
Me.SqlConnection1 = New System.Data.SqlClient.SqlConnection
'
'SqlCommand1
'
Me.SqlCommand1.CommandText = "[CustOrderHist]"
Me.SqlCommand1.CommandType =
System.Data.CommandType.StoredProcedure
Me.SqlCommand1.Connection = Me.SqlConnection1
Me.SqlCommand1.Parameters.Add(New
System.Data.SqlClient.SqlParameter("@RETURN_VALUE",
System.Data.SqlDbType.Int, 4, System.Data.ParameterDirection.ReturnValue,
False, CType(0, Byte), CType(0, Byte), "",
System.Data.DataRowVersion.Current, Nothing))
Me.SqlCommand1.Parameters.Add(New
System.Data.SqlClient.SqlParameter("@CustomerID",
System.Data.SqlDbType.NVarChar, 5))
'
'SqlConnection1
'
Me.SqlConnection1.ConnectionString = "workstation
id=CMSBANREP;packet size=4096;integrated security=SSPI;data source=CM" & _
"SBANREP;persist security info=False;initial catalog=Northwind"
Y para adherirle el valor a los parametros
SqlCommand1.Parameters.Item(1).Value = "ALFKI"
El 1 es por que el segundo parametro que creamos era el de CustomerID y
por lo tanto tiene el Indice 1.
Espero te sea util
John Jairo Bocachica
Colombia
Set rs=new ADOBC.Recordset
qry="exec sp_muestra_nombre "' & Text1.text & "'"
rs.open qry,cn
donde cn es la conexión creada a la BBDD (SQL SERVER)
Espero te sirva
--
Saludos,
Lord Rogers
Desde el último lugar del mundo...
"Jhon Jairo Espitia" <anon...@discussions.microsoft.com> escribió en el
mensaje news:635b01c42e1c$cbcf9f00$a001...@phx.gbl...
Miguel Egea
Gómez
Webmaster de
PortalSQL
mig...@online.portalsql.com
(lo de online sobra)
Microsoft SqlServer M.V.P.
"Miguel Egea" <migue...@online.telefonica.net> escribió en el mensaje news:Om4CdajL...@TK2MSFTNGP11.phx.gbl...
create table prueba ( valor char(1) )
go
create procedure obtieneprueba
@campo char(1)
as
select * from prueba where valor > @campo
luego desde VB :
Sub Main()
Dim cadena As String
Dim qry As String
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
cn.ConnectionString = "Provider=sqloledb;Data Source=
(local);Initial Catalog=test;User Id=sa;Password=password;"
cn.Open
Set rs = New ADODB.Recordset
cadena = "1'; drop table prueba ; select '"
qry = "exec obtieneprueba '" & cadena & "'"
rs.Open qry, cn
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
verás que ese proceso elimina la tabla.
Saludos,
Ulises
>-----Mensaje original-----
--
Saludos,
Lord Rogers
Desde el último lugar del mundo...
"ulises" <ulises.c...@terra.com.pe> escribió en el mensaje
news:688001c42ec1$47d0d250$a401...@phx.gbl...
Hay veces que no nos queda otra que usar Sql_Dinamico no? entonces lo que yo
hago en esas muy pero muy pocas Exepciones, entonces?
Bueno si haces un control de palabras en los String, podrias disminuir los
riesgos, por ej podrias poner que:
DROP
Delete
o cosas asi no sean validas y marques un error, claro no es 100% seguro es
verdad, pero que cosa es 100% segura? ;-)
Bue es solo un metodo nomas, lo que hay que tratar es de evitar el uso de
sql_dinamico y estas cosas :-)
--
Salu2
-----------------------------------------------------------
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
-----------------------------------------------------------
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein
"Lord Rogers" <ero...@sinestoseminarium.cl> escribió en el mensaje
news:%23oKVjRs...@TK2MSFTNGP12.phx.gbl...
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.661 / Virus Database: 424 - Release Date: 19/04/2004
--
Saludos,
Lord Rogers
Desde el último lugar del mundo...
"Maxi" <max...@infovia.com.ar.sacame> escribió en el mensaje
news:e6BXqXsL...@TK2MSFTNGP09.phx.gbl...
pero confío en
> mis usuarios (manejo pc sólo nivel usuario) en que no tienen IDEA de cómo
> hacer explotar la Base de Datos.
JAMAS pero JAMAS confies en los usuarios, por mas que sean buenas personas o
lo que fuere, pero usuarios en un sistema hay muchos, vos tambien sos una
usuaria del mismo y quizas la gente de sistemas meta la pata, pero ojo es
solo recomendacion nomas, no es para polemica ni mucho menos :-)
Suerte
--
Salu2
-----------------------------------------------------------
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
-----------------------------------------------------------
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein
"Lord Rogers" <ero...@sinestoseminarium.cl> escribió en el mensaje
news:u8UaIdsL...@TK2MSFTNGP09.phx.gbl...
Miguel Egea
Gómez
Webmaster de
PortalSQL
mig...@online.portalsql.com
(lo de online sobra)
Microsoft SqlServer M.V.P.
Miguel Egea
Gómez
Webmaster de
PortalSQL
mig...@online.portalsql.com
(lo de online sobra)
Microsoft SqlServer M.V.P.
--
Saludos,
Lord Rogers
Desde el último lugar del mundo...
"Maxi" <max...@infovia.com.ar.sacame> escribió en el mensaje
news:e6BXqXsL...@TK2MSFTNGP09.phx.gbl...