首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将其插入液化库中的表中

如何将其插入液化库中的表中
EN

Stack Overflow用户
提问于 2022-03-10 10:20:55
回答 1查看 184关注 0票数 0

我正在处理清算库,并试图将角色插入到角色表中。

代码语言:javascript
运行
复制
CREATE TABLE roles
(
`role_id`   int(11)     NOT NULL AUTO_INCREMENT,
`role_name` varchar(50) NOT NULL,
PRIMARY KEY (`role_id`)

AUTO_INCREMENT = 18
DEFAULT CHARSET = utf8;

insert into roles (role_id, role_name)
values (1, 'USER');

角色类:

代码语言:javascript
运行
复制
@Entity
@Table(name = "roles")
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class RoleEntity {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int roleId;
    @Column(nullable = false, length = 45)
    private String roleName;
public RoleEntity(int roleId) {
    this.roleId = roleId;
}

public RoleEntity(String roleName) {
    this.roleName = roleName;
}

}

创建表工作良好,表被创建。问题是插入到。错误是

代码语言:javascript
运行
复制
 Reason: liquibase.exception.DatabaseException: 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 'insert into roles (role_id, role_name)
values (1, 'USER')' at line 10 [Failed SQL: (1064) CREATE TABLE roles
(
    `role_id`   int(11)     NOT NULL AUTO_INCREMENT,
    `role_name` varchar(50) NOT NULL,
    PRIMARY KEY (`role_id`)
) ENGINE = InnoDB
  AUTO_INCREMENT = 18
  DEFAULT CHARSET = utf8;

但是语法没问题。如何以其他方式将角色插入到表中。以某种方式通过db_changelog.xml

EN

回答 1

Stack Overflow用户

发布于 2022-06-01 21:12:16

来自这篇文章:您的SQL语法有错误;请检查与您的MySQL服务器版本对应的手册,以便在第2行使用接近“‘)的正确语法。

单引号将终止MySQL中的字符串以及作为SQL命令处理的所有过去的内容。您真的不想这样写SQL。充其量,您的应用程序会断断续续(正如您正在观察的那样),最坏的情况是,您刚刚引入了一个巨大的安全漏洞。

下面是准备好的语句和PDO的伟大的文章

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71422499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档