Newsgroup: it.comp.lang.visual-basic
Titolo: Accesso Sql Server remoto dislocato in Internet

Devo accedere da Visual Basic ad un Sql Server tramite internet.
Utilizzo la seguente stringa di connessione:
Strconn = "Provider=SQLOLEDB;Network Library=DBMSSOCN;Data
Source=XXX.XXX.XXX.XXX;Initial Catalog=smadm;User ID=smca;Password=adminc"
Conosco la password Windows di Administrator del server in questione.
L'errore ritornato nel momento in cui faccio partire il programma é il
seguente:
[DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access
denied.
Provando a creare un dsn l'errore ritornato é il seguente:
Microsoft SQL Server ODBC Driver Version 03.80.0194
Running connectivity tests...
Attempting connection
[Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]Specified SQL server not
found.
TESTS FAILED!
Se può interessare il mio pc non é un utente del dominio del server e in SQL
Server alla voce authentication é settato "Sql Server and Windows" e lo
startup service accunt é settato su System account.
Come mai non mi fa accedere???
Grazie mille.
Fabio.

Per accedere al server sql devi indicare l'IP pubblico del PC su cui gira
sql server......
prova ad utilizzare il comando ping dal dos, scrivendo:
ping xxx.xxx.xxx.xxx
come minimo, avrai un messaggio "Request timed out"......ciò significa che
non riesci a raggiungere il server, non che non hai l'accesso!! Non ci
arrivi proprio!!
Assicurati di utilizzare l'IP giusto, prima......
good coding!!!
--
Igor Damiani
ig...@igordamiani.it
http://www.igordamiani.it
ICQ : 11847262

 ha scritto nel messaggio
news:aqqf6g$briud$1...@ID-134521.news.dfncis.de...

Già provato (da un pezzo), risponde al ping tranquillamente ed é lo stesso
indirizzo usato per collegarmi con terminal server...
...altro?


io ho un programma che accede ad un sql server su internet...
ed uso la seguente stringa un po' diversa da quella che hai postato
tu, potrebbe funzionare:
connstr = "driver={SQL Server};" & _
                "database=" & txtDbName.Text & ";" & _
               "server=" & txtServer.Text & ";" & _
               "uid=" & txtUser.Text & ";" & _
               "pwd=" & mePwd.Text & ";" & _
               "Network Library=TCP/IP;"
txtserver.text è l'ip
gli altri mi sembrano autoesplicativi...
se anche così non funziona prova ad utilizzare la client network
utility per dichiarare un nome per quel server e poi appoggiati a
quello...
se anche così non funziona allora meglio del ping prova un port
scanning sulla porta 1433 del server remoto perchè magari il server è
raggiungibile ma la porta sql è bloccata....
altro al momento non mi viene in mente.
Ciao, Claudio

sì, il suggerimento è buono, solo che dal primo post di Fabio, si deduce che
sta già utilizzando il protocollo TCP/IP, dato che ha messo furbescamente il
messaggio di errore che viene:
[Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]Specified SQL server not
found.
non mi sembra un errore di vb, dato che non riesce comunque a connettersi
anche se usa il pannello di windows.....perciò sembra più che altro un
errore sistemistico......
suggerisco anche io di fare un ping sulla porta 1433: sembra quasi che ci
sia una sorta di firewall che blocchi l'accesso su quella porta......
prova anche ad aumentare il timed-out della connessione, magari il problema
è tutto lì.......
facci sapere.....



wrote:
[cut]
Domanda banale: hai controllato con SQL Server Client Network Utility
se il tcp/ip e' abilitato ?
Stefano "HappyMan" (Lago Maggiore - NO)
--
Personal Web 
http://www.sgr.info
Email happyman69 (at) 
libero.it

 messaggio di errore che viene:
Ok: io verificherei però che il tcp/ip sia il protocollo predefinito
del client sql server...
...e allungherei il timeout.
ciao
ugo