Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
SELECT con clausola FOR XML - Limite di caratteri
giovedì 04 maggio 2006 - 17.13
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Vladislav
Profilo
| Newbie
4
messaggi | Data Invio:
gio 4 mag 2006 - 17:13
Utilizzando SQL server 2000, mi trovo a eseguire una SELECT con clausola FOR XML AUTO,ELEMENTS
La query ritorna una stringa XML, e fin qui è quel che mi serve.
Il problema è che nel caso che la stringa risulti superare x caratteri (non so il numero) la stringa viene arbitrariamente divisa, e sono ritornate più stringhe.
Questa, nel caso di una SELECT con risultati un minimo corposi (nemmeno troppo in realtà), è per me una grossa limitazione.
E' possibile ottenere una stringa XML unica, qualunque numero di caratteri contenga?
Grazie
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 4 mag 2006 - 17:29
>E' possibile ottenere una stringa XML unica, qualunque numero
>di caratteri contenga?
Ciao Vladislav,
si tratta di un BUG di ODBC. Per maggiori info leggi il seguente thread:
http://groups.google.it/group/microsoft.public.it.sql/browse_frm/thread/a975898223e1e314
>Grazie
Prego.
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Vladislav
Profilo
| Newbie
4
messaggi | Data Invio:
ven 5 mag 2006 - 08:58
Purtroppo da assoluto newbie quale sono ho difficoltà a capire l'articolo indicatomi.
Vi spiego nel dettaglio quel che voglio fare, utilizzando C#.
Voglio eseguire una SELECT con la clausola FOR XML, la stringa risultante dovrà essere passata all'applicazione, e con essa voglio popolare un DataSet.
Per maggiore chiarezza inserisco qui sotto il codice svuiluppato, e che presenta problemi nel caso di stringa lunga (superiore ai 2033 caratteri appunto):
_____________________________________________________________________
string stringa="SELECT * FROM Eventi FOR XML AUTO, ELEMENTS";
string connectionString = "packet size=4096;user id=sa;data source=SRV2;persist security info=False;initial catalog=Eventi";
SqlConnection conn = new SqlConnection(connectionString);
SqlCommand command = new SqlCommand(stringa);
command.Connection = conn;
command.CommandType=CommandType.Text;
conn.Open();
XmlTextReader iscritto = (XmlTextReader)command.ExecuteXmlReader();
conn.Close();
DataSet ds = new DataSet();
while ( !iscritto.EOF )
{
ds.ReadXml(iscritto);
}
_____________________________________________________________________
Torna su
Stanze Forum
Elenco Threads
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 !