[Python] Re: mssql
sergio brio
brio.sergio a gmail.com
Gio 27 Lug 2006 18:01:30 CEST
Ok, ottima idea.
Per quanto rigaurda il modulo, è il primo e l'unico che ho trovato.
Ma essendo nuovissimo di python... potrei aver cercato nei posti sbagliati.
Un'altra domanda molto semplice per intasare la ml :)
Vorrei fare un semplice script che mi controlla che la porta di mssql sia
effettivamente aperta su 5 host prima di collegarmi. Un semplice port
scanner.
Scusate la formattazione che con il webmail di google potrebbe scazzare...
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.settimeout(5);
try:
code = s.connect((ip,port))
except socket.timeout:
print "timeout!"
if (code == None):
s.shutdown(socket.SHUT_RDWR)
s.close()
print ip,"Port",port,"open"
Per il momento non funziona. Al primo ip con la porta chiusa, lo script esce
con
Traceback (most recent call last):
File "test.py", line 31, in ?
code = s.connect((ip,port))
File "<string>", line 1, in connect
socket.timeout: timed out
Grazie ancora
Il 27/07/06, Nicola Larosa <nico a teknico.net> ha scritto:
>
> >> Se però il server non è raggiungibile ottengo in output un messaggio
> >> del genere:
> >>
> >> _mssql.error: DB-Lib error message 20009, severity 9:
> >> Server is unavailable or does not exist.
> >>
> >> Come potrei gestire questo errore in maniera "elegante"?
>
> > Non conosco il modulo in questione ma ti potrei consigliare
> >
> > import _mssql
> >
> > try:
> > mssql=_mssql.connect('127.0.0.1 <http://127.0.0.1>','sa','')
> > except:
> > mssql=None
>
> Per favore, no.
>
> Non silenziate gli errori con una except vuota: non saprete più cos'è
> successo.
>
> Come minimo fate:
>
> try:
> mssql = _mssql.connect('127.0.0.1 <http://127.0.0.1>','sa','')
> except Exception, err:
> print err
>
> Meglio ancora specificare l'eccezione:
>
> try:
> mssql = _mssql.connect('127.0.0.1 <http://127.0.0.1>','sa','')
> except _mssql.error, err:
> print err
>
> così altre eccezioni non gestite daranno un traceback completo.
>
>
> Infine, non uso SQL Server ma quel "_mssql" mi puzza di variabile interna.
> Non c'è qualcosa di più ufficiale da usare?
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://lists.python.it/pipermail/python/attachments/20060727/293da765/attachment.htm
Maggiori informazioni sulla lista
Python