Versión Completa : Conexion Remota con SQL Server2000
morozco
enero 20, 2007, 09:50
Hola amigos tengo la siguiente conexion en local (mi equipo) para conectarme a Sql server desde ASP:
<%
dim db
Set db = Server.CreateObject("ADODB.Connection")
db.OPEN = "driver={SQL Server};server=sistemas;UID=Cnnintranet;PWD=intran et;database=cys"
%>
Bueno, esto me funciona perfectamente. Pero lo que yo quiero hacer es conectarme a una base remota de sql, en donde el server ya no sería SISTEMAS, porque logicamente le debo decir es la dirección IP, y tengo duda es con lo que sigue.
Ya probé dandole la dirección ip primero, osea así y no funciona...
db.OPEN = "driver={SQL Server};server=http://200.116.135.122;UID=Cnnintranet;PWD=intranet;datab ase=cys"
Bueno y en la parte del server he jugado con todas las combinaciones posibles sin que me haya dado resultado.
primero coloqué la IP sola osea, 200.116.135.122,
luego le antepuse el http osea, http://200.116.135.122
luego le agregué luego de la ip el nombre del servidor sql que en mi caso se llama sistemas osea, http://200.116.135.122/sistemas
luego le agregué el puerto 3306 que es por donde sql server escucha osea,
http://200.116.135.122:3306/sistemas
Mejor dicho, he probado de todo y nada. Aver un reto pa los juertes.
Vean yo hago una explicacion abreviada para mejor entendimiento
Yo tengo la primera conexion donde server es igual a "sistemas", ahí me funciona bien porque es local.
Y lo que yo quiero es conectarme a punta de la IP, cambiándo la conexion, y especificando el puerto de escucha que esto varias un montón de utilidades importantes, como que cuando inicie el programa me lea en mibase de datos alguna variable que se llame por ejemplo estado, y luego de que el estado sea por ejemplo un 1, entonces ya prosiga con el programa y su respectiva conexion en ese lugar,
y que cuando no me paguen, simplemente yo cambiaré en mi tabla de estado, el valor a un Cero(0), y cuando en la empresa vayan a correr el programa, entonces me tenga que leer primero mi variable, que será logicamente el cero que me leyó de mi base de datos, y no se ejecutará el programa.
Pero para poder lograr esto, estoy buscando la forma de que allá, se conecte a mi servidor de bases de datos, porque allá es banda ancha siempre tienen que estar conectados a internet, y mi servidorcito tambien está siempre conectado.
Bueno y tambien creo que ese están preguntando, bueno y como vas a hacer cuando la ip cambie, bueno ai lo toy pensando, pero el caso es al fin lograr que al menos esta primera parte carbure, y la otro será carpintería. :(
mmm me falla la memoria pero el Servidor deberia tener autorizada su ip, otra no use http solo la ip. mire que el servidor no lo este bloqueando un firewall o algo asi.
»LNR« Silvius
enero 21, 2007, 04:37
solo coloque el nombre del servidor, usuario y clave de acceso y ya.
pruebe y nos cuenta
morozco
enero 21, 2007, 07:55
Hola, amigo, mira. El nombre del servidor es "server", pero éste es para la red local o intranet, osea, este nombre no serviría para llamarlo desde internet. Y si coloco la IP, o combinaciónes todas posibles tampoco funciona. Entonces no sé a cuál nombre de servidor te refieres amigo.
Muchas gracias
»LNR« Silvius
enero 21, 2007, 08:18
Tengo muchas aplicaciones funcionando así:
en el web.config:
<add key="CadCon" value="Data Source=SERVIDOR; Initial Catalog=BaseDeDatos; User Id=usuario; password=clave"/>
en la página:
Conexion = ConfigurationSettings.AppSettings("CadCon")
Cnn1 = New SqlConnection(Conexion)
Cnn1.Open()
cmdContra = New SqlCommand("Select campos From tablacontratos Where condiciones")
rdrContra = cmdContra.ExecuteReader(CommandBehavior.CloseConne ction)
Do While rdrContra.Read()
operaciones
Loop
rdrContra.Close()
cmdContra.Connection.Close()
Cnn1.Close()
Cnn1.Dispose()
Cnn1 = Nothing
Estas aplicaciones funcionan tanto locales (intranet empresa) como web (clientes).
Espero haberte ayudado.
morozco
enero 21, 2007, 08:48
Hola mira, si la conexión está bien hecha, lo que yo pregunto es cómo conectar con un sql pero que esté externo. Osea así como lo hiciste está bien, pero dime, si tu te quieres conectar a mi servidor de sql que yo tengo montado aca en mi computador, se podría hacer? sabiendo que mi dirección IP es 200.116.135.122?
Recontragracias amigo.
morozco
enero 21, 2007, 08:53
Osea, mira. Que la pagina asp que se va a conectar esté en tu equipo, pero que la base de datos esté en mi equipo. (he ahí el problema)
Para qué quiero esto?
Para que cuando la pagina cargue, primero me lea un variable que tengo en un determinado campo pero de MI base de datos, y dependiendo del valor de este campo, entonces yo pueda bloquear el programa para que no funcione, Pero claro que los datos ya en sí de la pagina, pues se guardarían en el sql server donde esté almacenada la pagina (como es normal), yo lo que quiero es que me consulte otra base de datos que yo tengo acá en mi casa, y dependiendo del valor que tenga, Un cero o un Uno, entonces que siga funcionando o se pare.
RESUMEN.
Yo poder bloquear la pagina que vaya a hacer, simplemente cambiando un valor de una variable pero de mi computador, a sabiendas que la pagina se encuentra almacenada en el servidor de esa empresa ( como es normal)
Requetegracias
»LNR« Silvius
enero 22, 2007, 01:23
Pues viejo, con la ip exacta del servidor sql server debería funcionar, el problema es que el servidor SQL debería estar detras del firewall (que no creo), si no es así deberá especificar el puerto despues de la diracción ip.. algo como:
211.122.10.23:80
morozco
enero 22, 2007, 01:44
Si amigo, mira la base está detrás del zone alarm.
vBulletin®, Copyright ©2000-2009, Jelsoft Enterprises Ltd.