Newsgroup: it.comp.lang.visual-basic
Titolo: Matrici e database

Vorrei sapere se è possibile con VB5, memorizzare in un campo di una
tabella di un database un oggetto di tipo matrice dinamica.
Grazie per l'eventuale aiuto.
-- 
Remove xxx from E-mail.

Tutta la matrice? Mi sa di no!
Qual'è il problema esattamente?!
Ciao
Luca
Marco Rodriquez ha scritto nel messaggio
<01bdec5d$aa21d6e0$LocalHost@rodry>...


Ammetto di essere stato troppo sintetico. Il mio problema è questo: ho un
percorso di cui conosco il "Nome", la "Distanza", la quota altezza iniziale
"Qi" e finale "Qf"; ad ogni voce corrisponde un campo di una tabella.
Saltuariamente, durante il tragitto a piedi, vengono campionati i dati
(Distanza parziale; Altezza); il numero di campionamenti è variabile
(Matrice dinamica). Per il momento ho risolto il problema scrivendo i dati
in una stringa separati da un ";" associandola ad un campo "Matrice" della
mia tabella. Ad ogni richiesta dell'utente utilizzo una funzione per la
ricostruzione della matrice. Poichè è possibile inserire vari oggetti
(anche più complessi) all'interno di un campo di una tabella
(incorporandoli o no nel database) mi sono chiesto se sia possibile fare la
stessa cosa con una matrice dinamica,...che ne so...utilizzando qualcosa
tipo un puntatore ad un Array se esistesse !!! Il tutto in VB5.
Grazie per l'attenzione. 
Ciao
Marco 
---- 
Remove xxx from E-mail.

(Matrice dinamica).
Utilizza due tabelle collegate
Nella prima idContatore, Nome, Distanza, Qi e Qf
Nella seconda codiceContatore, distanzaParziale, altezza
Ciao Bruno

Scusami probabilmente c'è qualcosa che mi sfugge, ma non riesco a capire il
perchè dovrei crearmi un'altra tabella collegata per inserire due campi che
potrebbero risiedere su quella che ho già. Inoltre, se per esempio ho 10
coppie di dati (distanzaParziale; altezza) non sarò costretto a crearmi 20
campi?
Ciao
Marco 


Vero!
Il parsing sulla stringa è in effetti il modo migliore per risparmiare
spazio sul numero di campi da inserire in una tabella.
Comunque confermo la risposta precedente: anche se esistesse un modo per
puntare un array (Carlo B ha risposto a Roal Zanazzi in questo senso) non
vedo come possa metterlo in un campo: a cosa punterebbe? Ad una struttura
costruita o con i campi di una tabella (e qui torniamo indietro) oppure ad
una struttura costruita con il parsing su una stringa (e qui torniamo a te).
Direi che hai trovato la soluzione più elegante.
Ciao
Luca
Marco Rodriquez ha scritto nel messaggio
<01bded54$abdd8860$LocalHost@rodry>...


campi?
Ciao Marco,
allora se ho ben capito il tuo problema è quello di memorizzare dei
campionamenti relativi ad un certo percorso, con i campionamenti in numero
variabile.
In teoria tu potresti svolgere questa operazione memorizzando in un'unica
tabella tutte le coppie percorso-campionamento.
Es. Supponiameo che nel percorso A tu faccia n. 5 campionamenti e nel
percorso B n. 2 campionamenti.
Nel tuo ipotetico database avresti 7 record del tipo:
PercorsoA    1 campionamento
PercorsoA    2 campionamento
PercorsoA    3 campionamento
PercorsoA    4 campionamento
PercorsoA    5 campionamento
PercorsoB    1 campionamento
PercorsoB    2 campionamento
Questra Struttura può essere scomposta in due tabelle colegate da una
relazione uno a molti nel seguente modo
TabellaA
CodicePercorsoA    PercorsoA
CodicePercorsoB    PercorsoB
TabellaB
CodicePercorsoA    1 campionamento
CodicePercorsoA    2 campionamento
CodicePercorsoA    3 campionamento
CodicePercorsoA    4 campionamento
CodicePercorsoA    5 campionamento
CodicePercorsoB    1 campionamento
CodicePercorsoB    2 campionamento
In questo modo risparmi spazio (fatti un conto dello spazio occupato dalle
varie soluzioni), puoi associare un qualsivoglia numero di campionamenti ad
un determinato percorso, rendi più facile la modifica (eventuale) della
struttura del database ecc.
Spero di essere stato abbastanza chiaro
Ciao Bruno



Ora ci sono. Trovo la soluzione sicuramente più flessibile della mia.
Ciao Bruno e grazie.
Grazie anche a Luca.
