Torna indietro   Hardware Upgrade Forum > Software > Programmazione

AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D è la nuova CPU gaming di riferimento grazie alla 3D V-Cache di seconda generazione e frequenze fino a 5,6 GHz. Nei test offre prestazioni superiori a 9800X3D e 7800X3D, confermando la leadership AMD nel gaming su PC.
Le soluzioni FSP per il 2026: potenza e IA al centro
Le soluzioni FSP per il 2026: potenza e IA al centro
In occasione del Tech Tour 2025 della European Hardware Association abbiamo incontrato a Taiwan FSP, azienda impegnata nella produzione di alimentatori, chassis e soluzioni di raffreddamento tanto per clienti OEM come a proprio marchio. Potenze sempre più elevate negli alimentatori per far fronte alle necessità delle elaborazioni di intelligenza artificiale.
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa
AWS è il principale operatore di servizi cloud al mondo e da tempo parla delle misure che mette in atto per garantire una maggiore sovranità alle organizzazioni europee. L'azienda ha ora lanciato AWS European Sovereign Cloud, una soluzione specificamente progettata per essere separata e distinta dal cloud "normale" e offrire maggiori tutele e garanzie di sovranità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 06-03-2007, 16:04   #1
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
[PL/SQL] Matrice VARCHAR2

Ho fatto una procedura che prende a blocchi di n records alla volta
dove n é passato come parametro e per adesso stampa a video.
Dovrei invece copiare i valori ottenuti in una matrice passata sempre
come parametro. Si puó ?

Codice:
SET SERVEROUTPUT ON SIZE 1000000

CREATE OR REPLACE PROCEDURE MY_PROC( n IN number )
AS
   c     NUMBER;
   d     NUMBER;
   n_tab DBMS_SQL.varchar2_Table;
   indx  NUMBER := 1;

BEGIN

   c := DBMS_SQL.OPEN_CURSOR;

   DBMS_SQL.PARSE(c, 'select distinct SS from MY_TABLE order by SS', 1);

   DBMS_SQL.DEFINE_ARRAY(c, 1, n_tab, n, indx);

   d := DBMS_SQL.EXECUTE(c);

   LOOP
      d := DBMS_SQL.FETCH_ROWS(c);

      DBMS_SQL.COLUMN_VALUE(c, 1, n_tab);

      FOR i in n_tab.FIRST .. n_tab.LAST
      LOOP
         DBMS_OUTPUT.PUT_LINE(n_tab(i));
         -- QUI ANDREBBERO COPIATI I VALORI IN MATRICE
      END LOOP;

      EXIT WHEN d != n;
   END LOOP;

   DBMS_SQL.CLOSE_CURSOR(c);

   EXCEPTION
      WHEN OTHERS THEN
         IF dbms_sql.is_open(c) THEN
            DBMS_SQL.CLOSE_CURSOR(c);
         END IF;
END;
/
grazie
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 06-03-2007, 16:45   #2
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
trovato:
TYPE NUM_ARRAY IS TABLE OF VARCHAR2(n);
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 06-03-2007, 16:53   #3
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Quote:
Originariamente inviato da trallallero Guarda i messaggi
trovato:
TYPE NUM_ARRAY IS TABLE OF VARCHAR2(n);
Così non è una matrice. O meglio, è una matrice 1xN di varchar2(n).

Così a occhio eh...però forse non ho ben capito...
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 06-03-2007, 18:24   #4
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Quote:
Originariamente inviato da shinya Guarda i messaggi
Così non è una matrice. O meglio, è una matrice 1xN di varchar2(n).

Così a occhio eh...però forse non ho ben capito...
mi sa che hai ragione perchè mi riempie solo il primo elemento. Ormai sto a casa ma domani mi sa che ho bisogno di aiuto
Grazie
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 07-03-2007, 08:36   #5
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
eccolo:
Codice:
TYPE NUM_ARRAY   IS TABLE OF VARCHAR2(3) INDEX BY BINARY_INTEGER;
il (3) corrisponde alla larghezza della stringa e 3 mi basta.
Per dire che é una matrice basta aggiungere alla fine INDEX BY BINARY_INTEGER
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 07-03-2007, 13:36   #6
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Quote:
Originariamente inviato da trallallero Guarda i messaggi
eccolo:
Codice:
TYPE NUM_ARRAY   IS TABLE OF VARCHAR2(3) INDEX BY BINARY_INTEGER;
il (3) corrisponde alla larghezza della stringa e 3 mi basta.
Per dire che é una matrice basta aggiungere alla fine INDEX BY BINARY_INTEGER
Se metti index by binary_integer ( o pls_integer ) hai un "array" associativo. Se ti va bene puoi usare anche quello in effetti.
Per avere una matrice vera e propria dovresti fare qualcosa tipo:

Codice:
type t_columns is table of varchar2(3);
type t_matrix is table of t_columns;

my_matrix t_matrix;
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 07-03-2007, 14:13   #7
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Quote:
Originariamente inviato da shinya Guarda i messaggi
Se metti index by binary_integer ( o pls_integer ) hai un "array" associativo. Se ti va bene puoi usare anche quello in effetti.
Per avere una matrice vera e propria dovresti fare qualcosa tipo:

Codice:
type t_columns is table of varchar2(3);
type t_matrix is table of t_columns;

my_matrix t_matrix;
non l'ho capita
varchar2 é giá un array quindi dicendo TABLE OF diventa un array di array = matrice, a intuito ovviamente.
Tu invece fai un doppio passaggio, perché ?
Comunque grazie
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequen...
Le soluzioni FSP per il 2026: potenza e IA al centro Le soluzioni FSP per il 2026: potenza e IA al ce...
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto Redmi Note 15 Pro+ 5G: autonomia monstre e displ...
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Case PC in offerta: flusso d'aria ottimi...
Kingdom Come: Deliverance, dopo il succe...
Xiaomi domina tra le auto importate dall...
Upgrade PC a prezzo ridotto: Amazon scon...
SOCAMM: sarà questa l'implementaz...
Milano-Cortina 2026 nel mirino degli hac...
Vivaldi alza il dito medio (di nuovo) al...
PS Plus: Sony annuncia i nuovi giochi di...
Prezzi da urlo su Amazon Haul: parte la ...
Snapchat si riorganizza: nasce una divis...
Doppia offerta OLED LG: G5 55'' con staf...
Spotify straccia tutti i record: nel 202...
Henry Cavill svela il nuovo reboot di Hi...
Galaxy S25 512GB: il top compatto Samsun...
La fine di un'era: Tesla dice basta a Mo...
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: 12:00.


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