将数据插入DB时最后添加单个空格?

时间:2018-12-03 07:38:15

标签: mysql .net entity-framework

使用.Net实体框架存储过程将数据插入表中时,将在末尾附加空白。此问题仅包含两列。 其中两列都具有指向不同表的外键(这些表将具有允许的值(常数))。 仅供参考。

  1. 在SQL DB中,将列1定义为varchar(6),将列2定义为varchar(3)。
  2. 但是外键表1的数据最大长度为4,表2的数据最大长度为3。
  3. 以下代码中的EDMX文件可用

a)

<Function Name="spInsertdetails" Aggregate="false" BuiltIn="false" NiladicFunction="false" IsComposable="false" ParameterTypeSemantics="AllowImplicitConversion" Schema="dbo">
        <Parameter Name="column1" Type="char" Mode="In" />
        <Parameter Name="column2" Type="char" Mode="In" />

b) <FunctionImport Name="spInsertdetails" ReturnType="Collection(TestDBModel.spInsertdetails_Result)">
            <Parameter Name="column1" Mode="In" Type="String" />
            <Parameter Name="column2" Mode="In" Type="String" />

在3.a)中,我尝试将char更改为varchar,但问题仍然存在。

请让我知道是否需要更多详细信息。

2 个答案:

答案 0 :(得分:0)

这可能是由于数据长度的大小不同引起的。因此,更改数据类型的长度以使两个表中的长度相等。

答案 1 :(得分:0)

在存储过程以及实体框架edmx中,我们都需要将数据类型更改为varchar,然后在3)a函数中将其更改为varchar,因此不会在末尾添加空格。