为什么我的字符串值在插入SQL数据库时会累积空格?

时间:2011-09-08 20:37:35

标签: c# asp.net html sql string

我有一个广泛的表单插入SQL数据库,然后从管理页面我请求所有数据,并将其插入管理页面上的表单。在最初插入数据库期间,此特定下拉列表(与其他列表一样)是插入所选数据。但是当我进入数据库时​​,只有这个特定的单元格在插入所选值后才会得到3到4个空白空格。这导致布尔比较在尝试插入管理员表单时以false响应。 ie(“Primary”==“Primary”)= false。因此下拉列表不会更新。

什么会导致SQL行添加这些空格?所有HTML下拉列表及其代码背后的代码都是相同的。并且SQL数据库的结构在整个过程中看起来都是相同的。

P.S。要撤消问题,我试图在后面的代码中使用.Trim()。但这并没有什么不同。似乎SQL数据库在插入时添加了空格。

1 个答案:

答案 0 :(得分:27)

添加空格的列恰好是CHARNCHAR而不是VARCHARNVARCHAR吗?例如,如果您的columns数据类型为CHAR(10)并且在其中插入“Hello”,则该列中将始终有10个字符,因此在“Hello”之后将添加5个空白字符。但是,如果您使用VARCHAR(10),则不会发生这种情况。