MYSQL触发器使用case语句设置日期时间值

2024-04-07

我正在使用 mysqlimport 进行大量表插入(替换重复的主键)。有几个表具有日期时间列,其中的记录包含值“0000-00-00”。我想要的是一个触发器,它检测这些“0000-00-00”值并替换为“1950-01-01”,否则将日期时间值保留在记录中(即,当它不是“0000-00-00”时) 。

我已经尝试过以下方法:

CREATE TRIGGER set_datetime BEFORE INSERT ON tbl
FOR EACH ROW
CASE
WHEN date_col='0000-00-00' THEN SET date_col='1950-01-01';
END CASE

谢谢。

EDIT

更新尝试:

CREATE TRIGGER set_datetime BEFORE INSERT ON tbl
FOR EACH ROW
IF (NEW.date_col='0000-00-00') THEN
SET NEW.date_col='1950-01-01';
END IF;

SET 部分仍然出现错误。

EDIT 2

WORKING:

DELIMITER $$
CREATE TRIGGER insert_check BEFORE INSERT ON ar
FOR EACH ROW
BEGIN
    IF NEW.delivery_date='0000-00-00' THEN
        SET NEW.delivery_date='1950-01-01';
    END IF;
END; $$
DELIMITER ;

Use IF THEN :

IF (NEW.date_col = '0000-00-00') THEN
  SET NEW.date_col='1950-01-01';
END IF;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MYSQL触发器使用case语句设置日期时间值 的相关文章

  • MYSQL 查询返回“资源 id#12”而不是它应返回的数值

    不知道为什么 但这返回了错误的值 我正在取回此资源 ID 12 而不是我正在寻找的数值 1 执行此操作的代码是 type SELECT account type from user attribs WHERE username userna
  • SQL SERVER 中的排序依据和大小写

    我需要在存储过程中按功能排序 一个值被发布到网络服务 并且基于该值我必须以某种方式对结果进行排序 即 当 ColName 按 ColName 发布订单时 当 ColName2 由 ColName2 发布订单时 我正在研究使用 Case 但出
  • PHP PDO相关:更新SQL语句未更新数据库内容

    我正在尝试使用准备好的语句来实现更新语句PHP http en wikipedia org wiki PHP脚本 但它似乎没有更新数据库中的记录 我不确定为什么 所以如果您能分享一些见解 我将不胜感激 Code query UPDATE D
  • ActiveRecord3死锁重试

    Rails 3 或 ActiveRecord 3 是否有任何插件可以复制旧版本死锁重试 http agilewebdevelopment com plugins deadlock retry插入 或者 该插件仍然适用于 Rails 3 吗
  • 当“修复表”查询在 mysql 中不起作用时该怎么办?

    我收到此错误 表的存储引擎不支持修复 当我尝试使用查询修复表时repair table tbl college master 表是 innodb 类型 但我不知道我收到此错误 See 手册 http dev mysql com doc re
  • MySql 最后插入 ID,连接器 .net

    我正在使用 MySql Connector net 我需要获取最后一个查询生成的插入 id 现在 我假设返回值是MySqlHelper ExecuteNonQuery应该是最后一个插入id 但它只返回1 我正在使用的代码是 int inse
  • 如何在 phpmyadmin 中创建 MySQL 触发器

    我想在 MySQL 中创建一个触发器 我运行以下命令 mysql gt delimiter mysql gt CREATE TRIGGER before insert money BEFORE INSERT ON money gt FOR
  • 为什么 MySQL 创建带有 _seq 后缀的表?

    我创建了一个 InnoDB 表 名为foo在 MySQL 中 一旦我对表执行插入操作 我就会看到另一个表foo seq被建造 如果我删除自动生成的表 它会在下一次插入后出现 是什么原因造成的 听起来像是正在创建一个序列 您是否有自动生成的主
  • 无法启动 MySQL 服务器 - 控制进程退出并出现错误代码

    我的 mysql 服务器停止后无法启动 命令使用 sudo etc init d mysql restart Error 重新启动 mysql 通过 systemctl mysql serviceJob for mysql service
  • 为什么这会返回资源 id #2? [复制]

    这个问题在这里已经有答案了 可能的重复 我如何从 PHP 中的 MySql 响应中 回显 资源 id 6 https stackoverflow com questions 4290108 how do i echo a resource
  • 第三个下拉菜单不从数据库填充

    我有以下 Index php
  • MYSQL 区分大小写的 utf8 搜索(使用 hibernate)

    我的登录表具有 utf8 字符集和 utf8 排序规则 当我想要检查用户名并检索该特定用户名的其他信息时 hql 查询会为我提供小写和大写相同的结果 我应该如何处理适用于案例的 HQL 查询 我使用 Mysql 5 和 java hiber
  • 如何正确转义mysql?

    我刚刚发现如果我写 select from tbl where name like foo 然后添加 foo 作为参数及其值 a 用户数据 它不会正确转义 我勒个去 它想要 a 即使我使用参数 我还是忍不住觉得我对 sql 注入持开放态度
  • 使用 PHP 的 MySQL 连接字符串

    我正在尝试通过本地计算机连接到托管在我的服务器上的数据库 我的服务器有cPanel 11 它是一个典型的共享服务器 由CentOS提供支持 安装了PHP和MySQL 准确地说 我在同一台服务器上持有经销商帐户 我想在不同帐户或域之间访问数据
  • Mysql 中 UNION 子句的替代方案

    我有两张桌子 表 a 表 b table a ID 1 2 3 4 5 7 table b ID 2 3 4 5 6 我必须得到这样的输出而无需UNION命令 ID 1 2 3 4 5 6 7 注意 我有一个联合解决方案 select fr
  • Apache、PHP 和 MySQL 可移植吗?

    我可以在外部硬盘上运行 Apache PHP 和 MySQL 吗 我需要这个 因为我在不同的地方工作 计算机 有时我没有安装和配置所有使用的应用程序 当然可以 XAMPP http www apachefriends org en xamp
  • Abaqus 将曲面转化为集合

    我一直试图在模型中找到两个表面的中心 参见照片 但未能成功 它们是元素表面 面 查询中没有选项可以查找元素表面的中心 只能查找元素集的中心 找到节点集的中心也很好 但是我的节点集没有出现在工具 gt 查询 gt 质量属性选项中 而且我找不到
  • 在 MySQL 中使用 COUNT 时如何返回 0 而不是 null

    我使用此查询返回存储在 sTable 中的歌曲列表以及存储在 sTable2 中的总项目数 SQL queries Get data to display sQuery SELECT SQL CALC FOUND ROWS str repl
  • Mysql 创建定义器

    我创建了一个在 CentOS Web 服务器上运行的 Intranet Web 应用程序 该应用程序使用另一个本地服务器 始终是 CentOS 作为 MySQL 数据库 在数据库内部我创建了例程 这些例程总是这样开始 CREATE DEFI
  • MySQL 查询计算上个月

    我想计算上个月的订单总额 我收到了从当前日期获取当月数据的查询 SELECT SUM goods total AS Total Amount FROM orders WHERE order placed date gt date sub c

随机推荐

  • React Native 上的浮动操作按钮

    我想在屏幕右下角的 React Native Android 中使用浮动操作按钮 但我不能这样做 The 创建按钮组件包含浮动按钮代码 我在列表视图之后调用了 CreateButton 组件 我想在 ListView android 组件上
  • 如何在 R 中使用 if-else 条件赋值

    我有一个带有 a 列的数据框 我想根据 a 列添加不同的 b 列 For if a gt 10 b double Otherwise b single 我该怎么做 示例输出 a b 2 single 2 single 4 single 11
  • 写入 Unicode 文件

    我在 c 程序中写入 unicode 文件时遇到一些问题 我正在尝试将 unicode 日语字符串写入文件 当我去检查文件时 尽管它是空的 如果我尝试使用非 unicode 字符串 它就可以正常工作 我究竟做错了什么 setlocale L
  • 红宝石导轨包括?数组[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 是否可以检查数组内的包含数组 我想检查是否 primary 1 2 3 包括secondary 2 3 我努力了primary includ
  • Groovy 属性迭代

    在下面的 Groovy 代码中 我替换了feck arse drink实例的属性Foo与那些实例Foo2 class Foo def feck fe def arse ar def drink dr class Foo2 def feck
  • 如何将 Web 部件页面添加到站点定义?

    我必须为必须包含预定义 Web 部件页面的客户端创建站点定义 我可以创建 Web 部件页面 但在创建时将它们附加到网站时却不知所措 我知道通过 SharePoint 创建的 Web 部件页面存储在文档库中 我是否需要预先填充 Web 部件页
  • 尝试使用 JavaScript 访问使用 生成的 SVG 元素

    我正在尝试使用 JavaScript velocity js 为我定义的 SVG 制作动画
  • 如何撤消从功能分支提交到主线的更改,同时保持分支最新?

    有时 我们会遇到将功能分支提交到基线的问题 并发现在某些情况下它可能会出现严重错误 因此需要恢复更改 而不会丢失此后完成的所有其他提交 然而 需要有人继续在原来的分支上工作 我不想使用git rebase在主线上改变历史 因为这本身就会导致
  • 如何从其他 Ruby 脚本调用标准 Rakefile 中定义的 Rake 任务?

    是否可以调用在 a 中定义的任务Rakefile 不在somefile rake 来自其他 Ruby 脚本 我希望创造一个新的Rake Application会自动加载Rakefile来自同一目录 但似乎情况并非如此 这是我到目前为止想到的
  • 使用 Swift UI 自定义 macOS 工具栏

    我正在开发一个 macOS 应用程序 其视图层是用 SwiftUI 编写的 我知道 iOS 工具栏至少可以更改背景颜色 但是当我尝试在 macOS 中执行此操作时 它的行为并不符合我的预期 这是一个 简化的 示例 struct Conten
  • 如何根据 C++ 文件的输入为枚举赋值?

    我有一个文件 其值如下 开始和停止 我还声明了以下枚举 enum Type START STOP 我试图将枚举设置为等于文件中的第一个值 如下所示 enum Type foo ifstream ifile ifile open input
  • UML 领域建模

    领域模型和数据模型有什么区别 数据模型是一个design仅描述数据及其关系的模型 该模型包含实体 但它们是根据什么来描述的data他们不负责如何处理这些数据或他们的责任是什么 另一方面 领域模型是用于分析问题领域的概念模型 它用具有关系 数
  • 服务层模式——我们能否在特定情况下避免使用服务层?

    我们正在尝试使用服务层模式实现一个应用程序 因为我们的应用程序也需要连接到其他多个应用程序 并且在网络上进行谷歌搜索 我们发现了应用该模式的 正确 方式的演示图形的链接 marinfowler com 服务层模式 http martinfo
  • 第一次追加后,append_entry() 不起作用。我将 Fieldlist 与 Flask-wtf、jinja 和 Python 3.4 一起使用

    我在通过flask wtf 中的append entry 附加字段列表时遇到问题 我可以从字段列表中添加一行字段 但在添加第一行后 我无法添加第二行 没有显示错误 在第一次尝试中 添加了字段列表项的新行 并在服务器日志中打印了 数据为王 和
  • Node js 是否使用 googleapis 或 google-cloud 库

    我看到有两个可用的库 我想知道有什么区别 它们都是由 Google 官方维护的吗 https www npmjs com package googleapis https www npmjs com package googleapis h
  • 是否可以包装整数并像整数一样调用它?

    我想把 int 变成IDictionary
  • 如何将 ArrayList> 从一个活动传递到另一个活动

    我如何将数组列表从一个活动传递到另一个活动我的数组列表如下所示 ArrayList
  • 归档和取消归档导致访问错误

    我在设置模型对象以在 iPhone 的简单图形应用程序中保存用户生成的 CALayers 的视觉状态时遇到问题 我试图通过将这些属性传递给实现 NSCoding 协议的模型对象 然后传递给应用程序委托拥有的 NSMutableArray 来
  • 在Python中与子进程多次通信

    这个问题不是重复的 与一个进程进行多次通信而不破坏管道 https stackoverflow com questions 3065060 communicate multiple times with a process without
  • MYSQL触发器使用case语句设置日期时间值

    我正在使用 mysqlimport 进行大量表插入 替换重复的主键 有几个表具有日期时间列 其中的记录包含值 0000 00 00 我想要的是一个触发器 它检测这些 0000 00 00 值并替换为 1950 01 01 否则将日期时间值保