Sis update ...

mercoledì 03 settembre 2008 - 13.26

memmo77 Profilo | Expert

Ho aggiunto un Task per effettuare l'update di una tabella. Se imposto due parametri "?" sul where :

UPDATE T_DIZIONARIO_LIVELLO2 SET T_DIZIONARIO_LIVELLO2.SYS_USER = ? ,T_DIZIONARIO_LIVELLO2.FLG_VISIBILE = 1 FROM T_DIZIONARIO_LIVELLO2 INNER JOIN T_DIZIONARIO_RACCORDO ON T_DIZIONARIO_RACCORDO.FK_ID_LIV0 = T_DIZIONARIO_LIVELLO2.ID_LIV0 AND T_DIZIONARIO_RACCORDO.FK_ID_LIV1 = T_DIZIONARIO_LIVELLO2.ID_LIV1 AND T_DIZIONARIO_RACCORDO.FK_ID_LIV2 = T_DIZIONARIO_LIVELLO2.ID_LIV2 WHERE T_DIZIONARIO_LIVELLO2.ID_ABI = ? AND T_DIZIONARIO_RACCORDO.FK_ID_RAC_PAESI_VALUTE = ?

Mi dice, ...impossibile associare l'identificatore in + parti T_DIZIONARIO_RACCORDO.FK_ID_RAC_PAESI_VALUTE. Perchè? Non posso passare due parametri sul where o si passano in modo diverso?

Grazie

alx_81 Profilo | Guru

>Ho aggiunto un Task per effettuare l'update di una tabella.
>
>UPDATE T_DIZIONARIO_LIVELLO2
> SET T_DIZIONARIO_LIVELLO2.SYS_USER = ?
> ,T_DIZIONARIO_LIVELLO2.FLG_VISIBILE = 1
>FROM T_DIZIONARIO_LIVELLO2
> INNER JOIN T_DIZIONARIO_RACCORDO ON
> T_DIZIONARIO_RACCORDO.FK_ID_LIV0 = T_DIZIONARIO_LIVELLO2.ID_LIV0
> AND T_DIZIONARIO_RACCORDO.FK_ID_LIV1 = T_DIZIONARIO_LIVELLO2.ID_LIV1
> AND T_DIZIONARIO_RACCORDO.FK_ID_LIV2 = T_DIZIONARIO_LIVELLO2.ID_LIV2
>
>WHERE
> T_DIZIONARIO_LIVELLO2.ID_ABI = ?
> AND T_DIZIONARIO_RACCORDO.FK_ID_RAC_PAESI_VALUTE = ?
>
>Mi dice, ...impossibile associare l'identificatore in + parti
>T_DIZIONARIO_RACCORDO.FK_ID_RAC_PAESI_VALUTE. Perchè? Non posso
>passare due parametri sul where o si passano in modo diverso?
Certo che puoi. L'errore non è riferito a SSIS.. Secondo me hai un errore di sintassi. Hai provato a fare il check della sintassi mettendo un valore fisso al posto dei parametri?

>Grazie
di nulla!
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

memmo77 Profilo | Expert

No, sostituendo i ? con i valori corrispondenti, sembra funzionare correttamente. Succede solo se nella where ci sono due ?. Non capisco da cosa possa dipendere.
Grazie ciao
ps. come sono andate le ferie?

alx_81 Profilo | Guru

>No, sostituendo i ? con i valori corrispondenti, sembra funzionare
>correttamente. Succede solo se nella where ci sono due ?. Non
>capisco da cosa possa dipendere.
Guarda l'errore che ottieni è il seguente:
http://technet.microsoft.com/it-it/library/cc645618.aspx

Quindi, facciamo così, se proprio non ci salti fuori, passami le create delle tabelle.. e provo ad adattare la tua query per vedere se tutto va bene..


>Grazie ciao
di nulla!

>ps. come sono andate le ferie?
Non le ho fatte

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

memmo77 Profilo | Expert

No, non era una create ma un update della taballe, ti ho messo il codice sopra. Ho risolto sostituendo l'update diretto con una stored, ma se possibile mi piacerebbe capire perchè mi dava quell'errore.
Grazie
ps. come mai niente ferie? Non te le sei meritate?

alx_81 Profilo | Guru

>No, non era una create ma un update della taballe, ti ho messo
>il codice sopra. Ho risolto sostituendo l'update diretto con
>una stored, ma se possibile mi piacerebbe capire perchè mi dava
>quell'errore.
Non mi sono spiegato.. se mi passi la create delle due tabelle, posso provare l'update

>ps. come mai niente ferie? Non te le sei meritate?
storia lunga.. lasciamo perdere..

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

memmo77 Profilo | Expert

Aaaaaaah non avevo capito eccolo:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Okok per le ferie non ti chiedo nulla allora

alx_81 Profilo | Guru

>Aaaaaaah non avevo capito eccolo:
mi passi anche l'altra?

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

memmo77 Profilo | Expert

Scusa :

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

alx_81 Profilo | Guru

L'update è ok,
il tipo di connection manager usato per l'esecuzione dello statment è?
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

memmo77 Profilo | Expert

La connessione è una connessione di tipo OLEDB.

alx_81 Profilo | Guru

>La connessione è una connessione di tipo OLEDB.
ultimo step.. passami il ssis..
non ci vedo proprio niente di male..
Con le create, l'update che lanci ed il ssis, ci salteremo fuori
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5