x Ketto |
Mattew |
25/10/2005 |
Difficoltà:
Principiante
|
|
Hai
2
strade.
O
ti
crei
una
tabella
che
è
tabellone
è
l'unione
di
tutte
le
tabelle
che
usi
tu
(
ovviamente
solo
i
campi
che
ti
servono
)
,
oppure
c'è
u
Se
stai
usando
database
come
oracle
o
sql
server
,
potresti
utilizzare
una
funzione
che
torna
una
tabella
(
ti
faccio
un
esempio
in
sql
server
).
In
visual
basic
la
tue
query
sarà
statica.
Select
*
from
fn_tuafunazione
(
param1
,
param2
ecc..)
la
tua
funzione
deve
avere
uns
struttura
simile
create
Function
dbo.fn_tuafunzione
(
param1
int
,
param2
int
)
return
@info
table
(
campo1
,
campo2
ecc.)
una
volta
creata
ed
implementata
,
la
usi
come
una
vera
e
propria
query
(
vedi
sopra
).
Il
bello
che
ogni
volta
che
vorrai
altre
informazioni
prese
da
altra
tabelle
non
servira
ricompilare
il
progetto
(
almeno
che
nn
ci
siano
campi
diversi
),
ma
implementare
la
funzione
sql
(esterna
al
progetto
vb
)
ti
scrivo
un
esempietto
banale
create
Function
dbo.fngetinfo
(
@cod
int
)
return
@info
table
(
@nome
varchar
(
50
)
,
@cognome
(
varchar
(
50
))
)
--
body
--
dichiari
tante
variabili
quanti
sono
i
campi
Declare
@V_nome
varchar
(
50
)
Declare
@V_nome
varchar
(
50
)
Select
@V_nome
=
NOME
,
@V_cognome
=
cognome
from
LISTA
where
codice
=
@cod
-->
tuo
parametro
insert
into
@info
(
nome
,
cognome
)
Select
@V_nome
,
@V_cognome
return
end---
questa
è
la
tua
funzione
in
vb
scriverai
Select
*
from
fngetinfo
(
50
)
--
la
interrogi
come
una
tabella.
puoiacnhe
scegliere
icampi
es.
Select
nome
from
fngetinfo
(
50
)
vantaggi
1)
se
in
seguito
la
tabella
non
si
chiama
piu
LISTA
ma
ELENCO
,
nn
dovrai
ricompilare
il
progetto
ma
semplicemente
correggere
la
funzione
sql
2)
mettendo
le
informazioni
dentro
le
variabili
puoi
anche
lavorarle
nel
senso
che
essendo
stringhe
ci
fai
quello
che
vuoi.
il
gioco
delle
variabili
lo
puoi
fare
solo
se
come
parametro
hai
un
codice
univoco
nel
senso
che
a
quel
codsice
corrisponde
solo
un
record.
altrimenti
non
usi
le
variabili
va
farai
direttamente
cosi
insert
into
@info
(
nome
,
cognome
)
Select
nome
,
cognome
from
lista
ciao
spero
di
essertti
stato
d'aiuto
.
per
qualsiasi
problema
fammi
sapere.
ps
so
che
è
un
po
complicato
scriverlo
,
a
voce
sarebbe
meglio
,
ma
con
questo
metodo
eviti
un
sacco
di
problemi
ciao
|