SQL - 将带有换行符的文本插入列中会导致错误

SQL - Inserting text with line breakes into a column causes errors

我在数据库中有一列类型:nvarchar(300)

在一个页面上,我有一个最大大小限制为 300 的文本区域,允许最多输入 300 个字符:

<textarea id="txtDescription" maxlength="300" cols="70" rows="5"></textarea>

但出于某种原因,当我输入带有换行符的文本时,就像这样:

 1. First.
 2. Second.
 3. Third.

浏览器没有正确计算输入的符号数,它将一个换行符计为一个额外的字符,但是当我将这个值插入 SQL 列时,它给我一个类型不匹配错误,显然 因为 SQL 将一个换行符计为两个字符 并且超过了最大长度。

现在,因为我不知道用户会在那里输入多少换行符,有什么方法可以处理输入值,以便将其正确插入数据库 table,没有任何错误? (注意:我在客户端使用 Javascript,在服务器端使用 VBscript 编写的经典 ASP。

以便我保持最多 300 个字符的限制并且不必将列的类型更改为 nvarchar(MAX)?

您可以删除回车 returns(char(13)\r)并保留换行符(char(10)\n)。