Ho molto (oltre un migliaio di posti) di codice legacy T-SQL
che rende solo INSERT
s in una colonna varchar(8000)
in una tabella di utilità. Le nostre esigenze sono cambiate e ora la colonna deve essere in grado di gestire valori più grandi. Di conseguenza ho bisogno di fare quella colonna varchar(max)
. Questa è solo una semplice colonna di dati dove non ci sono ricerche preformate su di essa, nessun indice su di essa, solo una procedura la legge, è INSERT
e dimentica per l'applicazione (quasi come una voce di registro).Qualsiasi insidia nascosta che modifica una colonna da varchar (8000) a varchar (max)?
Pianifico di apportare modifiche solo in alcuni punti che generano effettivamente i dati più grandi e nella singola stored procedure che elabora questa colonna.
- C'è qualche insidia nascosta che modifica una colonna da
varchar(8000)
avarchar(max)
? - Lavoreranno tutte le
T-SQL
funzioni stringa stessa,LEN()
,RTRIM()
,SUBSTRING()
, ecc - Qualcuno riesce a immaginare alcuna ragione per cui avrei dovuto apportare modifiche al codice che pensa la colonna è ancora
varchar(8000)
?
Perché non si passa a una colonna di testo? – Maz
@Max ci sono cose che non puoi fare su una colonna TEXT, che la tua lattina su un VARCHAR (MAX) (come le query DISTINCT) –
, le funzioni di aggregrato e le colonne di testo non vanno troppo bene anche se ... – riffnl