mysql - 是否可以在 mysql 中插入单词和变量的组合?

标签 mysql sql triggers insert

触发器定义:

BEGIN
INSERT INTO `user` (`ID`, `Username`, `Password`, `Online`) VALUES
(NEW.ID, "store_"NEW.ID , 'blablabla', 0);
END

在此触发器中,我必须插入类似 store_(新商店的 id)之类的用户名。

是否可以做到这一点,如果可以,如何做到?

最佳答案

在 SQL 中连接/追加字符串有 2 种方法

a.使用+运算符连接字符串
b.使用Concat函数。

通过使用 + 运算符,查询将如下所示。

BEGIN
  INSERT INTO `user` (`ID`, `Username`, `Password`, `Online`) VALUES
  (NEW.ID, "store_" + NEW.ID , 'blablabla', 0);
END

通过使用 Concat() 函数,查询将如下所示。

BEGIN
 INSERT INTO `user` (`ID`, `Username`, `Password`, `Online`) VALUES
 (NEW.ID, Concat("store_",NEW.ID) , 'blablabla', 0);
END

推荐的选项是使用“Concat”函数,因为语法更容易遵循,并且代码看起来更干净

关于mysql - 是否可以在 mysql 中插入单词和变量的组合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58972913/

相关文章:

php - 错误 : SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens

MySQL选择不同的计数

sql - 如何在cosmos DB中实现复杂的SQL语句,例如JOIN IN和GROUP BY

c# - 在 SQL WHERE 子句中使用变量时出现 Visual C# OleDbException

php - sql查询中的多个条件

java - 如何在 Spring3 MVC 中设置与 MySQL 的 JDBC 连接?

mysql - 加速使用全文连接的 SQL 查询

database - 如何实现系统以确定是否已达到里程碑

svn - 当特定用户提交通常会触发构建的特定文件时,防止触发 TeamCity 构建

wpf - 使用样式触发器增加用户控件的大小?