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 中两次连接同一个表?

    我有2张桌子 其中一个 域 具有域 ID 和域名 dom id dom url 另一列包含实际数据 其中 2 列需要 TO 和 FROM 域名 所以我有 2 列 rev dom from 和 rev dom for 它们都存储域表中的域名
  • 使用外部硬盘写入和存储 mysql 数据库

    我已经设置了 mysql 数据库在我的 Mac 上使用 java 和 eclipse 运行 它运行得很好 但现在我将生成大约 43 亿行数据 这将占用大约 64GB 的数据 我存储了大量的密钥和加密值 我有一个 1TB 外部我想用作存储位置
  • mySQL 基于不同表的 SELECT(计数)更新表

    我有一个课程表和一个科目表 CLASS class id class name subject id date time imagine some rows here SUBJECT subject id subject name curr
  • 无循环按键对多维数组求和

    我有这个 Array 0 gt Array f count gt 1 uid gt 105 1 gt Array f count gt 0 uid gt 106 2 gt Array f count gt 2 uid gt 107 3 gt
  • 如何在一对一关系上使用 onDelete: 'CASCADE'

    当用户被删除时 我尝试删除用户的个人资料 但它并没有删除个人资料上的任何内容 用户实体 Entity export class User PrimaryGeneratedColumn id number Column name string
  • MySQL:如何获取上次更新的更改

    我正在使用 MySQL 和 PHP 开发数据库应用程序 此时我正在尝试获取上次更新引起的更改 我解决问题的第一个方法是 使用 SELECT 获取 旧 状态 使用 UPDATE 进行更改 使用 SELECT 获取 新 状态 将数组与 php
  • 会话已关闭对象名称:“ISession”。在 NHibernate.Impl.AbstractSessionImpl.ErrorIfClosed() - 如何阻止会话过早关闭

    我在带有 MySQL 的 MVC C 应用程序中使用 NHibernate 我正在尝试让多个用户访问该会话 我一直在使用 InRequestScope 在我的会议上 但我仍然得到 System ObjectDisposeException
  • 如何将从 MySQL 获取的数据以 JSON 形式返回到 php 文件中?

    我必须将从 MySQL 表中获取的数据作为 JSON 返回到 php 文件中 这是我连接到 mysql 并从中获取数据的代码 现在我怎么能将它作为 JSON 返回呢
  • 更新或插入 MySQL Python

    如果记录已存在 我需要更新一行 如果不存在 我需要创建一个新记录 我理解 ON DUPLICATE KEY 将使用 MYSQLdb 完成此操作 但是我无法使其正常工作 我的代码如下 cursor database cursor cursor
  • 在 while 循环内查询可以吗?

    我在一个数据库中有两个表 我正在查询第一个表限制 10 然后循环结果 在 while 循环内 我使用第一个查询中的数据作为参数再次执行另一个查询 以下是该脚本的示例
  • 规范“毒”方式真的值得吗? (3NF)

    我正处于数据库设计的早期阶段 所以还没有最终的结果 并且我正在为具有可选标签的线程使用 TOXI 3表设计 但我忍不住觉得加入是并不是真的必要 也许我只需要依赖我的简单标签列posts我可以在其中存储类似 varchar 的表
  • 删除重复的 SQL 记录以允许唯一键

    我在 MYSQL 数据库中有一个表 销售 该表理应强制执行唯一约束以防止重复 事实证明 首先删除欺骗并设置约束有点棘手 表结构 简化 id 唯一 autoinc 产品编号 目标是强制product id 的唯一性 我想要应用的重复数据删除策
  • 如何通过单个mysql查询更新多个表?

    我有两个表 tb1 和 tb2 我必须在用户级别更新两个表的公共列 我对两个表都有一个共同的标准 例如用户名 所以我想这样更新 UPDATE tb1 tb2 SET user level 1 WHERE username Mr X 但不知何
  • 如果所有情况都是真正的 PHP,如何处理这些情况

    我想知道是否有办法继续完成所有三种情况 如果它们都是真的 但是使用break 因为作为一个例子 如果第一种情况是真的 第二种情况是假的 第三种情况也是假的 而且我没有使用break 无论如何它都会进行 将strtotime更改为2014年1
  • 使用 Python 开发时保护 MySQL 密码?

    我正在编写一个使用本地托管的 MySQL 数据库的 Python 脚本 该程序将以源代码形式提供 这样 MySQL 密码就肉眼可见 有没有好的办法来保护这个呢 这个想法是为了防止一些顽皮的人查看源代码 直接访问 MySQL 并做一些事情 好
  • BigDecimal 的 JPA @Size 注释

    我该如何使用 SizeMySQL 的注释DECIMAL x y 列 我在用着BigDecimal 但是当我尝试包括 Size max它不起作用 这是我的代码 Size max 7 2 Column name weight private B
  • 从本地 html/javascript 网站插入 mySQL 数据库

    我正在尝试做什么 我的程序的目的是插入数据local HTML JS网站变成online 非本地 mySQL数据库 到目前为止我尝试过的 我试图用来实现此目的的原始方法是让我的本地网站使用 javascript 通过在线发布数据PHP文件
  • 更新查询增量字段加上 1 codeigniter 函数 [重复]

    这个问题在这里已经有答案了 我想在 codeigniter 项目中将字段值增加到当前值加 1 所以 我做了一个功能 但它不起作用 我的职能是 function increse field by 1 table name fieldToInc
  • 使用mysql数据按高低价格排序

    这是我所拥有的以及我想做的 我的 MySql 数据库中有 12 个项目 4 个产品为 4 99 4 个产品为 3 99 4 个产品为 2 99 我意识到我可以像这样查询数据库 它会给我一个该价格的产品列表
  • Mysql案例不工作

    SELECT SQL CALC FOUND ROWS a zn name AS zone name c name AS carrier name CASE type WHEN type 1 THEN General day ELSE Spe

随机推荐

  • 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 否则将日期时间值保