Torna indietro   Hardware Upgrade Forum > Software > Programmazione

AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot
AMD Advancing AI è l'appuntamento annuale con il quale l'azienda americana mostra quelle che sono le proprie novità dal versante datacenter. Tra piattaforma Helios, GPU Instinct MI455X e processori EPYC di sesta generazione tutto quello che serve per processare l'IA sempre più complessa ed esigente
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader
BOOX Go 6 Gen II porta per la prima volta il supporto allo stilo su un e-reader da 6 pollici, affiancando 3 GB di RAM al collaudato Snapdragon 665 e un design rivisto con scocca posteriore a costolature. Su carta la proposta è interessante, ma Android 11 fuori supporto, l'assenza di un alloggiamento per il pennino e un'autonomia ridotta rispetto agli e-reader tradizionali sono i compromessi da accettare
Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro
Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro
Lenovo Idea Tab Plus prova a portare un display da 12,1 pollici 2.5K, quattro speaker Dolby Atmos e una batteria da 10.200 mAh sotto la soglia psicologica dei 300 euro, penna inclusa. Lo abbiamo usato per oltre una settimana per capire dove l'azienda ha tagliato e dove invece ha tenuto il punto
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-12-2017, 19:43   #1
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
[SQL Oracle] Query con uno strano comportamento

Il mio cliente ha deciso di scrivere una singola query di circa 1000 linee.
Non so come l'abbiano partorita, ma funziona in una loro applicazione.

Ora, la query deve essere inserita in una nuova applicazione Java. Io sono incaricato di farlo.
Ecco la sorpresa:
- se eseguo la query tramite JDBC, la query fallisce dicendo che non esiste una tabella (credo sia qualcosa di temporaneo creato all'interno della query);
- se la eseguo via SQL Developer va tutto bene;
- se la salvo e la eseguo ancora via SQL Developer, continua ad andar bene;
- se la eseguo via sqlPlus, la query fallisce esattamente come Java, dicendo che non esiste una tabella;
- se la salvo e la eseguo ancora via sqlplus, la query continua a fallire;

Non credo sia necessario pubblicare una query di 1000 linee senza nemmeno avere la possibilita' di sapere la struttura del database.
Credo che prima di tutto la domanda debba essere: com'e' possibile? Perche' l'applicazione del cliente riesce ad eseguirla - cosi' come SQL Developer (che e' scritto in Java, fra l'altro) - e fallisce con Java e con sqlplus?

Non riesco ad immaginarmi una query simile, ma non sono un grande esperto. Penso che il problema sia dovuto alla creazione di tabelle temporanee all'interno della query, ma questo non mi sembra possa giustificare una simile differenza di comportamento....

qualche idea?
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 13-12-2017, 20:33   #2
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Scusate, mi rispondo da solo. Ho fatto dei test con sqlplus fino a quando sono riuscito a far eseguire la fat query.
Il problema stava nei settaggi di sqlplus. La fat query ovviamente non e' su una sola riga; inoltre vi erano dei commenti.

Ho eliminato i commenti e impartito questi comandi a sqlplus prima di eseguire la query:

set sqlblanklines on
set sqlterminator ';'

Fatto questo, la query e' stata eseguita correttamente.
Evidentemente il problema erano le linee vuole nella query ed il carattere di terminazione.

Ovviamente ora devo tornare ad affrontare il problema in ambito Java, e mi sa che, viste le premesse, non sara' facilissimo...
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 13-12-2017, 21:25   #3
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Ok, questo e' l'ultimo
Anche per Java JDBC vale lo stesso problema: non gli piacciono le righe vuote nella query. Anzi, non credo nemmeno che nella query che si passa a jdbc siano ammessi i caratteri di a capo, ma non ne sono sicuro.
Per prova li ho eliminati, sostituendoli con uno spazio per evitare che identificatori a fine ed inizio linea potessero incollarsi ed e' andato tutto!

Ho provato a cercare qualcosa su internet (svogliatamente direi, visto che ho gia' la soluzione) ma non ho trovato questa informazione: quindi, cari colleghi, state attenti a dare in pasto a JDBC una query spezzata su piu' linee

Grazie lo stesso a tutti!
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2017, 08:35   #4
Bazzilla
Senior Member
 
L'Avatar di Bazzilla
 
Iscritto dal: Dec 2010
Messaggi: 2554
Quote:
Originariamente inviato da sottovento Guarda i messaggi
Grazie lo stesso a tutti!
Grazie a te!
__________________
PC: Lenovo Legion 5 15ACH6H Ryzen 7 5800H - RTX 3070
CONSOLE: PS5 (Fibbione) - Xbox Series X (Fibbione)
Bazzilla è offline   Rispondi citando il messaggio o parte di esso
Old 15-12-2017, 05:23   #5
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Per me è inconcepibile che non si possano usare quanto meno linee vuote per spezzare query complesse, visto che SQL è un linguaggio abbastanza verboso e comunque non è affatto raro che una query assuma certe dimensioni.

Bah...

Comunque grazie per aver riportato la tua esperienza!
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 15-12-2017, 17:11   #6
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Hai perfettamente ragione.
Comunque l'importante e' saperlo, cosi' da preprocessare la stringa prima di passarla a jdbc. Strano pero' che la cosa non venga nominata nella documentazione ufficiale (o magari mi e' scappata).

Ovviamente jdbc ha anche altri problemi, per esempio non e' in grado di eseguire degli script sql, ma questo gia' si sapeva.
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
Tascabile e con Android: BOOX Go 6 Gen II è diverso da tutti gli altri e-reader Tascabile e con Android: BOOX Go 6 Gen II &egrav...
Recensione Lenovo Idea Tab Plus: il tablet da 12 pollici che costa meno di 300 euro Recensione Lenovo Idea Tab Plus: il tablet da 12...
Oltre il contante e le crypto: tutto sull'Euro Digitale e la nuova sovranità monetaria europea Oltre il contante e le crypto: tutto sull'Euro D...
Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere? Recensione HONOR Magic V6: spessore record e sup...
Amazon col caldo fa pazzie: TOP 15 con p...
Lego ricrea Donkey Kong da sala giochi e...
ChatGPT ignora l'embolia polmonare: uten...
Auto nuova a soli 100 euro al mese: cos'...
Kimi K3 non è solo distillazione:...
Assassin's Creed Black Flag: Resynced st...
EUREKA J15 Ultra Gen2 a 399€: aspirazion...
AMD EPYC 9006 SP7 e SP8: differenze, spe...
Copilot è ovunque: l'intelligenza artifi...
BOOX Tile Picco vuole cambiare il settor...
E-bike Engwe al prezzo più basso ...
Atari sbarca a Hollywood: in arrivo i fi...
AMD e Cerebras uniscono Helios e Wafer-S...
GTA 6: preordini da record e stime fino ...
Samsung arricchisce il suo ecosistema co...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:16.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v