我正在尝试实现一个用户身份验证表。我正在进行用户注册,我的控制台打印出来:
org.h2.jdbc.唯一索引或主键冲突:"PUBLIC.USERS_USERNAME_UINDEXPUBLIC.USERS(USERNAME)VALUES 1";SQL语句:
INSERT INTO USERS(FIRST_NAME,LAST_NAME, USERNAME, PASSWORD)VALUES(?,?,?,?) [23505-200]
我真的不明白为什么。我的表的SQL脚本如下:
-- auto-generated definition
create table USERS
(
USER_ID INT auto_increment,
USERNAME VARCHAR2,
FIRST_NAME VARCHAR2,
LAST_NAME VARCHAR2,
PASSWORD VARCHAR2,
constraint USERS_PK
primary key (USER_ID)
);
create unique index USERS_USERNAME_UINDEX
on USERS (USERNAME);
create unique index USERS_USER_ID_UINDEX
on USERS (USER_ID);
我希望username
对每个条目都是唯一的,因此我将该字段设置为唯一的。这就是我填充它的方式:
Connection connection = new InitialiseDatabase().getConnection();
String sql = "INSERT INTO USERS(FIRST_NAME,LAST_NAME,USERNAME,PASSWORD) VALUES(?,?,?,?)";
PreparedStatement myStatement = connection.prepareStatement(sql);
myStatement.setString(1, txtFirstName.getText().trim());
myStatement.setString(2, txtLastName.getText().trim());
myStatement.setString(3, txtUsername.getText().trim());
String hashed = BCrypt.hashpw(txtPassword.getText(), BCrypt.gensalt());
myStatement.setString(4, hashed);
myStatement.executeUpdate();
我该如何解决这个问题?
不过,我的表正在填充数据。所以我不明白到底是什么问题。任何帮助都将不胜感激。
UNIQUE索引确保两行对于唯一索引列不能具有相同的值。https://www.oracletutorial.com/oracle-index/oracle-unique-index/
Unique index or primary key violation: "PUBLIC.USERS_USERNAME_UINDEX ON PUBLIC.USERS(USERNAME)
很会说话。您可能正在插入一个新行,其用户名值与之前插入的用户名值相同。
不过,我的表正在填充数据
确保您的数据库没有与您尝试插入的值相同的值。
我是hibernate新手,我遇到了以下问题。“唯一索引或主键冲突”。问题的出现是由于错误的映射,但我花了几个小时来找出为什么会发生这种情况。 我有一个超级类叫做数据结构 然后是关联两个元素的类关联。这里省略了类的某些部分,只是为了简化它。 这个类作为两个数据结构类型类之间的中间类。像这样。 TP-协会-TP TP等级: 或者激活类 总的来说,我增加了以下内容: 当我尝试添加相同的对象时,问题就出
每当我的应用程序启动时,我总是得到以下错误消息: 将data.sql更改为: 生成以下错误消息:
我开始在我的spring managed java项目中使用flyway(我也在使用hibernate)。 我遵循了飞行路线的文档。我还配置了maven插件,一切正常。 尝试使用maven插件进行清理、初始化和迁移,一切正常。 相反,如果我尝试运行我的应用程序(其中有我的flyway bean): 我看到了: 创建数据库的模式 创建schema_version表 我的脚本创建整个数据库工作 不幸的
尝试通过REST Post方法插入Student对象时得到以下错误 2020-10-08 18:50:08.799错误21708---[nio-8080-exec-7]O.A.C.C.C.[.[.[/].[dispatcherServlet]:servlet.Service()在路径[]上下文中的servlet[dispatcherServlet]引发异常[请求处理失败;嵌套异常是org.spri
尝试通过REST Post方法插入学生对象时出现以下错误 2020-10-08 18:50:08.799错误21708---[nio-8080-exec-7]o. a. c. c.C.[.[.]Servlet.service()的servlet[调度Servlet]在上下文中的路径[]抛出异常[请求处理失败;嵌套异常是org.springframework.dao.数据完整性违反异常:不能执行语句
在使用Postgresql的Rails4.2中,我在尝试保存新的ActiveRecord对象时遇到了这个错误 PG::UniqueViolation:错误:重复键值违反唯一约束“My_table_name_pkey” 它看起来像是试图用已经存在的主键将记录插入到表中。我该怎么解决这个问题?