Newsgroup: it.comp.lang.delphi
Titolo: MSSQL Server e i componenti ADO

Ho installato msde2000a e sto provando a fare l'upgrade di un mio progetto
da database access a sql server: lo scopo di questo upgrade e' quello di
portare in rete un programma che sino a d'ora gira come monoutenza.
Cercando nei ng e in giro per la rete ho visto che mantenendo i componenti
ADO (AdoConnection, ADODataset, ADoTable, ADoquery, Adocommand) che
precedentemente colloquivano con access, ora dovrebbero andare lisci anche
con sql server.
Effettivamente, cambiato il provider della adoconnection da
Microsoft.Jet.OLEDB.4.0 a SQLOLEDB  (a parte qualche problema di indici e
relazioni dovuti all'upsizing del db da access) il tutto funziona senza
troppi problemi.
Quello che vorrei chiedere al ng, se qualcuno ha gia' affrontato questa
migrazione o comunque gia' lavora con sql server, e' come impostare
correttaemnte le proprieta' delle adotable e dei dataset in funzione
all'accesso concorrenziale.
C'e' qualche proprieta' che dovrei cambiare rispetto a questa tabella che
ho preso come esempio? 
object ADOTabStatoCivile: TADOTable
  Connection = DMAnagrafiche.ADOConnection1
  CursorLocation = clUseServer
  TableDirect = True
  TableName = 'TabStatoCivile'
end
Avete raccomandazioni da farmi particolari riguardo il modo di lavorare con
sqlserver?
Grazie in anticipo a chiunque mi rispondera'.
-- 
Morde. 
FAQ di icld (beta-version): 
http://icld.altervista.org
 
M-List di icld: 
http://it.groups.yahoo.com/group/icld/

 sqlserver?
Ti dirò: sviluppo con ADO su MSDE/SQLServer da qualche anno (almeno 3, 
sempre con Delphi 7) e non ho mai avuto problemi a mantenere le 
impostazioni di default degli oggetti ADO.
Ci ho fatto un po' di tutto e non ho mai avuto rogne, senza essermi mai 
dovuto impegolare con la gestione dei cursori: sarò stato fortunato?
Saluti
	Marco Bortolani
	info @ 
marcobortolani.it
P.S.
Qualche tempo fa sono andato ad un seminario di presentazione Microsoft 
su ADO.Net, e durante un'analisi comparativa con ADO "normale" tra le 
altre cose l'operatore a un certo punto si è espresso più o meno così: 
"Mi raccomando, è da un po' che lo diciamo: NON USATE I CURSORI NELLE 
QUERY!". E' vero che si parlava di query ADO su pagine ASP, però...
P.P.S.
Un'altra cosa che mi viene in mente è questa: se devo effettuare 
operazioni di una certa delicatezza sui dati (es. inserire una testata 
fattura facendomi restituire il codice generato, per poi legarvi i 
dettagli), talvolta preparo delle stored procedure sul database che 
invoco poi da programma.
Le SP vengono  eseguite lato server in modo atomico (cioè 
ininterrottamente dall'inizio alla fine senza che in mezzo il motore 
database "curi" qualche altra chiamata), garantendomi così da eventuali 
accessi concorrenti.
Questo modo di operare l'ho imparato a suo tempo su Interbase (come mi 
gustano Ib e Fb) e fino ad ora non mi ha mai tradito: si tratta solo di 
programmare un po' anche lato server...

 impostazioni di default degli oggetti ADO.
Questo e' un bel punto di partenza :D
Quindi basterebbe partire da un deploy del componente di default, e poi
verificare la risposta in rete.
Leggevo comunque che e' sconsigliato usare le adotable perche' recuperano
tutta la tabella. Ma non ho ancora suffragato da prove questa affermazione.
Ci faccio un po' di pasticci sopra, poi vediamo.
Grazie!
