Campi stringa sqlserver

mercoledì 07 luglio 2004 - 11.05

contiello Profilo | Senior Member

Salve ho un problema con una applicazione web
Il problema è questo: da un oggetto textarea Html dovrei salvare del testo in un campo del database.
Il problema è che con il varchar(8000) non ce la faccio in quanto il testo è troppo grande!

Come posso risolvere? esiste un campo tipo quello memo di access??
Grazie

Brainkiller Profilo | Guru

Ciao,
allora su SQL Server puoi utilizzare più record per inserire un testo più lungo di 8000 caratteri, però diventa un po' di difficile gestione. Oppure puoi usare i campi di tipo text o ntext però sei un po' vincolato all'uso di funzioni ad hoc READTEXT, WRITETEXT, UPDATETEXT. Oppure puoi installare Yukon (SQL Server 2005) che contiene un campo nvarchar (max) che può contenere fino a 2 giga di caratteri :)

Praticamente la risposta te l'ho fornita io ma dopo che mi sono consultato con il collega MVP Lorenzo Benaglia. Grazie a lui!

ciao
david

contiello Profilo | Senior Member

Salve ho visto l'esempio in home page ma li fa riferimento ad un file
io invece ho una stringa
a me interesserebbe fare una cosa del genere :
Dim bufferx As New Byte
bufferx = variabilestringa

Come posso fare?

contiello Profilo | Senior Member

Funziona grazie mille ,però se non chiedo troppo vorrei sapere come si fail contrario???
Mille grazie!

contiello Profilo | Senior Member

Salve sono riuscito sia a scrivere il testo nel campo image sia a leggerlo
Però solo adesso mi rendo conto che c'è un problema ancora + grosso.
Come posso utilizzare adesso il campo image contenente il mio testo in CRystal Report?


Grazie!

contiello Profilo | Senior Member

Salve sono riuscito sia a scrivere il testo nel campo image sia a leggerlo
Però solo adesso mi rendo conto che c è un problema ancora più grosso
Come posso utilizzare adesso il campo image contenente il mio testo in CRystal Report?
Grazie!

contiello Profilo | Senior Member

Salve sono riuscito sia a scrivere il testo nel campo image sia a leggerlo
Però solo adesso mi rendo conto che c è un problema ancora più grosso
Come posso utilizzare adesso il campo image contenente il mio testo in CRystal Report?
Grazie!

contiello Profilo | Senior Member

Salve sono riuscito sia a scrivere il testo nel campo image sia a leggerlo
Però solo adesso mi rendo conto che c è un problema ancora più grosso
Come posso utilizzare adesso il campo image contenente il mio testo in CRystal Report?
Grazie!

contiello Profilo | Senior Member

Breve riflessione sul topic....
Alla mia domanda sul come fare per inserire del testo + lungo di 8000 caratteri,
mi è stato risposto di vedere l'articolo sulla home page sui campi blob.
Una piccola riflessione che penso possa essere utile per coloro che si troveranno nella stessa mi situazione.
Ho realizzato la modifica che mi interessava con il campo image di sql server, ma dopo averla fatta mi sono reso conto che c'erano 2 problemi seri per cui la soluzione campo blob per un testo lungo non era conveniente.
Il primo problema era relativo al fatto che non avrei potuto effettuare ricerce di parole all'interno del testo in quanto lo stesso era riportato nel db in formato binario.
Il secondo problema era dovuto al fatto che non potevo stampare il contenuto del campo utilizzando Crystal Report.

Ho risolto il problema utilizzando il campo di sql server ntext
che memorizza caratteri UNICODE, fino a 1073741823 caratteri.

Detto ciò vorrei sapere se ci sono altre cose che dovrei prendere in considerazione.
Spero di essere stato chiaro ed aver aiutato qualcuno che in futuro si ritrovi nella mia stessa situazione.
Ciao

Brainkiller Profilo | Guru

Ciao Contiello,
effettivamente uno dei problemi è quello che ti trovi a gestire poi un campo binario e non più testuale e quindi perdi cose come la l'uso della like oppure il full text search.
Con ntext o text almeno te la dovresti cavare.
Altre soluzioni non saprei. Oracle ne usava una mista, cioè nel DB crea degli indici/puntatori a file su disco, sul file system. Non era una soluzione brutta anzi, era ottima, non so poi se è stata portata avanti o meno. Però in SQL Server non c'è :(

ciao
david
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-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5