关于 c#:如何使用 MySqlParameter 有条件地将列设置为其默认值?

关于 c#:如何使用 MySqlParameter 有条件地将列设置为其默认值?

How do I conditionally set a column to its default value with MySqlParameter?

我在存储用户帐户的 MySql 数据库中有一个表。其中一列 expires 存储到期日期,但默认为 NULL。我需要能够删除到期日期并将其设置回默认值。

目前,我所有的 CRUD 例程都是使用带参数的 MySqlCommand 编写的。这可以直接使用 MySqlParameter 完成,还是我必须创建一个备用命令对象来处理这种可能性?


问题是 DBNull,正在做:

1
command.Parameters.AddWithValue("@parameter", null);

编译正常。


我通常在代码中将默认/空白的值设置为 null,然后在执行查询之前,运行以下循环:

1
2
foreach(MySqlParameter param in cmd.Parameters)
    if (param.Value == null) param.Value = DBNull.Value;


不清楚你在说什么条件。如果要将列设置为默认值,可以使用 DbNull.Value;

1
2
3
4
5
command.AddWithValue("@param", DbNull.Value);

or

command.Parameters.Add("@param", data type).Value = DBNull.Value;

推荐阅读

    linux看用户信息命令?

    linux看用户信息命令?,系统,密码,信息,状态,软件,情况,命令,用户,网络,时间,l

    linux命令行设置字体?

    linux命令行设置字体?,系统,工具,终端,软件,电脑,数字,位置,等级,字体,命令,L

    linux下删除用户命令?

    linux下删除用户命令?,系统,代码,邮箱,用户组,命令,用户,名称,管理,电脑,账

    用户id的linux命令?

    用户id的linux命令?,系统,密码,信息,联系方式,地址,位置,用户,命令,用户名,

    linux命令快捷设置?

    linux命令快捷设置?,第一,系统,名称,终端,发行,首页,命令,快捷键,窗口,桌面,l

    linux命令设置扩展屏?

    linux命令设置扩展屏?,工具,系统,电脑,技术,软件,装备,情况,工作,命令,显示

    linux删除用户组命令?

    linux删除用户组命令?,管理,系统,密码,电脑,名称,用户,用户组,名字,信息,工

    linux下用户权限命令?

    linux下用户权限命令?,管理,系统,密码,地址,权限,时间,基础,信息,基本知识,

    linux登陆用户命令?

    linux登陆用户命令?,系统,工具,信息,地址,软件,工作,命令,数字,服务,名称,Lin

    linux用户名改名命令?

    linux用户名改名命令?,系统,密码,命令,代码,名称,用户名,用户,终端,主机名,

    linux命令设置中文?

    linux命令设置中文?,系统,工作,数据,管理,设备,环境,标的,第一,网上,模式,lin

    设置网址命令linux?

    设置网址命令linux?,地址,系统,网络,代码,网址,密码,信息,电脑,管理,基础,lin

    linux用户分组命令?

    linux用户分组命令?,系统,命令,电脑,信息,时间,标准,资料,用户,文件,用户组,L

    linux命令改用户所属?

    linux命令改用户所属?,系统,文件,名称,用户组,命令,用户,名录,基本知识,所

    linux系统用户组命令?

    linux系统用户组命令?,系统,管理,密码,代码,用户组,用户,命令,邮箱,电脑,名

    linux用户管理的命令?

    linux用户管理的命令?,系统,管理,信息,地址,工作,用户,单位,基础,数据,命令,L

    linux设置日期命令?

    linux设置日期命令?,时间,系统,标准,命令,信息,大陆,国家,日期,时钟,时区,详

    linux用户退出命令行?

    linux用户退出命令行?,状态,档案,标准,系统,命令,文件,模式,编辑,指令,主机,l

    linux设置时钟命令?

    linux设置时钟命令?,时间,系统,服务,图片,命令,网络,信息,风险,国家,大陆,lin