Newsgroup: it.comp.www.asp
Titolo: [HELP] DB Oracle + ASP = DB Access + ASP ?

Salve,
da qualche giorno io e i miei colleghi stiamo discutendo della possibilità
di trasferire tutti i nostri DB (creati con Access) con DB Oracle.
Il dubbio che mi sorge è questo: La sintassi da utilizzare in ASP per la
gestione di un DB Oracle è la stessa che per un DB di Access o cambiano
alcuni parametri?
Grazie 1K.
Michele Mariotti

 writes:
MM> Salve,
MM> da qualche giorno io e i miei colleghi stiamo discutendo della possibilità
MM> di trasferire tutti i nostri DB (creati con Access) con DB Oracle.
Voto per Oracle :)
MM> Il dubbio che mi sorge è questo: La sintassi da utilizzare in ASP per la
MM> gestione di un DB Oracle è la stessa che per un DB di Access o cambiano
MM> alcuni parametri?
Io  ho usato  gli Oracle  Objects For  Ole (ampiamente  documentati da
Oracle)  ed  avendo  lavorato  sempre  di  SQL  non  ho  avuto  grandi
cambiamenti  da  fare  anche  perché  si  è  trattato  di  cambiamenti
pressoché meccanici che il computer ha  fatto per me (tre hurra per la
bash e Emacs - quest'ultimo non indispensabile, basterebbe sed).
Connessione
    Set OraDatabase = OraSession.OpenDatabase("","user/pwd", _
                                              &H3&)
(credo sia possibile accedere anche via SQLNet a db remoti...)
SQL di 'comando' (questi mettono la data all'inglese e la formattazine dei
numeri all'italiana)
    OraDatabase.ExecuteSQL ("ALTER SESSION SET NLS_NUMERIC_CHARACTERS = ',.'")
    OraDatabase.ExecuteSQL ("ALTER SESSION SET NLS_DATE_FORMAT = 'MM/DD/YYYY'")
Creazione recordset
    Set RS = OraDatabase.DbCreateDynaset(UCase(sql),0)
 
+----------------------------------------------------------------+
| Gian Uberto Lauri * "So, are you working on fixing that bug    |
| 
sa...@eng.it
      *  *now* or leaving it until later ?" - YES  |
+----------------------------------------------------------------+
| Attenzione: rispondo ad ogni invio di pubblicità non richiesta | 
| o spam di qualsiasi altro genere con un messaggio al provider  |
| di competenza. Ai sensi della legge sulla privacy NON avete il |
| permesso di utilizzare i miei dati per questi scopi.           |
+----------------------------------------------------------------+

alcuni parametri?
Per fare il collegamento (se utilizzi ADO), devi aggiungere uno
UserName ed una Password validi. Poi, dipende.
Se hai usato delle query "personalizzate" per Access (es. LEFT JOIN),
dovrai rivedere quelle query perche' Oracle usa una sintassi diversa,
tieni anche conto che Oracle NON HA i campi contatore.
Se hai usato delle query standard SQL 92 non dovresti avere nessuna
differenza.
Davide


Moderatore di it.comp.www.asp
Sito di supporto: 
http://www.aspitalia.com/newsgroup/icwa.asp
Tutto su WindowsNT? Su 
http://www.aspitalia.com
Professional WAP, per te su 
http://www.aspitalia.com/store/
Impara l'e-conomy su 
http://www.e-conomy.it

>>>>> "DB[i" == Daniele Bochicchio [MOD icwa] <Daniele> writes:
DB> a parte la stringa di  connessione, certe cosette tipo le query su
DB> date, e la potenza veramente eccezzionale di Oracle :-)
La prima volta che ho incontrato Oracle ero di rinforzo ad un progetto
dove usavano  la funzione TO_DATE()  per la conversione  esplicita, la
seconda  volta ho  visto che  dando una  stringa nel  formato corretto
potevo usare normalissime stringhe delimitate da single quote (').
Mi sembra una modifica meccanica da lasciar fare in automatico a sed :).


 Mi sembra una modifica meccanica da lasciar fare in automatico a sed :).
tu con Access usi # #, invece con Oralce o usi TO_Date() o lo metti tra
apici, come già hai detto. in ogni caso, sempre devi fare delle modifiche
:-|


> Mi sembra una modifica meccanica da lasciar fare in automatico a sed :).
Ovvero non sono io a fare le modifiche :), ma il mio cariolino :).
(A dire  il vero non  ho usato  sed ma una  kluge pazzesca in  cui una
 shell lanciata dentro  Emacs ricercava i file da  modificare e quindi
 lanciava  una  funzione  di  Emacs  perché  caricasse  i  file  e  li
 modificasse... La scusa  ufficiale è che con sed  devi avere l'output
 diverso dall'input, la realtà è  che non mi ricordavo bene SED mentre
 la mossa folle mi ha richiesto un paio di minuti :) )


>differenza.
LEFT e RIGHT JOIN sono standard ma Oracle non le supporta, appunto.
Antonio

LEFT JOIN e' standard. 
<ZAP>
Chiariamo una cosa:
LEFT JOIN NON E' STANDARD.
Lo standard SQL 92 NON SPECIFICA in nessun modo le Outer Join,
pertanto NON ESISTE UNO STANDARD.
Ogni database implementa o non implementa le Outer Join a 
capocchia sua.
Davide

>pertanto NON ESISTE UNO STANDARD.
Scusa ma devo insistere. Sulle specifiche quando si parla di join c'e' la
seguente regola della sintassi:
         <join type> ::=
                INNER
              | <outer join type> [ OUTER ]
              | UNION
         <outer join type> ::=
                LEFT
              | RIGHT
              | FULL
Come vedi sono presenti outer join (left, right e full).
Fonte: 
http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt
Ovvero, Oracle non e' standard su questo importante punto.
Antonio

seguente regola della sintassi:
Ci hai ragione, non so' perche' ma sono sempre stato convinto
che le specifiche non lo implementassero.
Chiedo umilmente venia.
Davide