gpt4 book ai didi

mybatis - MyBatis Insert Query中如何手动插入null

转载 作者:行者123 更新时间:2023-12-02 01:56:16 30 4
gpt4 key购买 nike

这是一个流行的例子。

    <!-- Insert example, using the Account parameter class -->
<insert id="insertAccount" parameterType="Account">
insert into ACCOUNT (
ACC_ID,
ACC_FIRST_NAME,
ACC_LAST_NAME,
ACC_EMAIL
)values (
#{id}, #{firstName}, #{lastName}, #{emailAddress}

)

我想手动为其中一个字段插入 null。

   <!-- Insert example, using the Account parameter class -->
<insert id="insertAccount" parameterType="Account">
insert into ACCOUNT (
ACC_ID,
ACC_FIRST_NAME,
ACC_LAST_NAME,
ACC_EMAIL
)values (
#{id}, #{firstName}, #{lastName}, #{null}

)但是我得到了这个异常(exception)

   org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'null'

谁能帮忙。

最佳答案

MyBatis 使用#{propertyName} 来定义属性。如果您使用名称“NULL”,它会查找 getNull() 和 setNull(...) 或命名参数或映射。但是,如果在您的情况下该值曾经为 null,则可以省略该值,就像您在数据库中没有该列的默认值一样。

<insert id="insertAccount" parameterType="Account">
insert into ACCOUNT (
ACC_ID,
ACC_FIRST_NAME,
ACC_LAST_NAME
)values (
#{id}, #{firstName}, #{lastName}
);

或者以与 SQL 命令相同的方式输入准确的值:

<insert id="insertAccount" parameterType="Account">
insert into ACCOUNT (
ACC_ID,
ACC_FIRST_NAME,
ACC_LAST_NAME,
ACC_EMAIL
)values (
#{id}, #{firstName}, #{lastName}, null
);

关于mybatis - MyBatis Insert Query中如何手动插入null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19828950/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com