En principio, la solución no estaría en ASP.
En un textarea, a priori, no puedes fiajar el número máximo de caracteres. Tendrías que recurrir, por ejemplo a Javascript, para que cuando se envie el formulario compruebe antes la longitud del texto introducido. Evidentemente, se puede hacer con ASP, pero eso implicaría enviar el formulario, procesarlo haciendo la comprobación de la longitud del texto y volver a enviarlo si esta es excesiva. Con lo cual se perdería, creo yo, demasiado tiempo.
También puedes hacer que según se vaya escribiendo el textarea compruebe la longitud del texto y se impida escribir más.
Te dejo un ejemplo para esto:
Código:
<html>
<head>
<script language="JavaScript">
function comprobar(texto){
if(texto.length>179){
texto = texto.substr(0,179);
document.form1.textarea.value = texto;
}
document.getElementById("cuenta").innerHTML=texto.length+1+" caracteres. (180 máx.)";
}
</script>
</head>
<body>
<form name="form1" method="post" action="">
<textarea name="textarea" cols="80" rows="3" onKeyDown="comprobar(this.value)"></textarea>
<div id="cuenta"></div>
</form>
</body>
</html>
Otra cosita más. Dices que da un error en la base de datos. Los campos en formato texto, al menos de Access, permiten 50 caracteres por defecto. Lo puedes ampliar, pero sólo hasta 255.
Espero que te sirva.
Un saludo.