如何创建一个触发器,在使用 SQL 插入之前将空字符串设置为 null?

发布于 2024-10-12 12:22:34 字数 428 浏览 2 评论 0原文

我正在使用 phpmyadmin,但我不知道如何让它在导入数据时自动将空字符串设置为 null,因此我尝试编写一个触发器来执行此操作。

我的触发器最终必须包含比这更多的字段,但这是我的测试运行触发器,它不起作用:

create trigger test1
before insert   
on hvi
for each row
begin
if new.`Amt` = ' ' then
set new.`Amt` = null 
end if;
end;

我收到此错误:

MySQL 说:文档#1064 - 你 SQL 语法有错误; 检查对应的手册 您的 MySQL 服务器版本 在“end if”附近使用正确的语法 第 8 行

我做错了什么?

I'm using phpmyadmin and I can't figure to how to get it to automatically set empty strings to null while importing data, so I'm trying to write a trigger to do it.

My trigger will eventually have to include many more fields than this, but this is my test run trigger, which is not working:

create trigger test1
before insert   
on hvi
for each row
begin
if new.`Amt` = ' ' then
set new.`Amt` = null 
end if;
end;

I get this error:

MySQL said: Documentation # 1064 - You
have an error in your SQL syntax;
check the manual that corresponds to
your MySQL server version for the
right syntax to use near 'end if' at
line 8

What am I doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你的背包 2024-10-19 12:22:34
if new.`Amt` = ' ' then
set new.`Amt` = null ;
end if;
if new.`Amt` = ' ' then
set new.`Amt` = null ;
end if;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文