I want to update a row,
I've tried statements like:
dsl.update(AUTH_LOGIN_USER)
.set(AUTH_LOGIN_USER.FAILED_LOGIN_COUNT, 0)
.where(AUTH_LOGIN_USER.LOGIN_NAME.eq(credentials.getUsername())).execute();
and
AuthLoginUserRecord authuser = dsl.fetchOne(AUTH_LOGIN_USER,
AUTH_LOGIN_USER.LOGIN_NAME.equal(credentials.getUsername()));
authuser.setFailedLoginCount(0);
authuser.update();
they failed with:
"Access database using jOOQ; bad SQL grammar [update
\"public\".\"auth_login_user\" set
\"public\".\"auth_login_user\".\"failed_login_count\" = ? where
\"public\".\"auth_login_user\".\"login_name\" = ?]; nested exception is
org.postgresql.util.PSQLException: ERROR: column \"public\" of relation
\"auth_login_user\" does not exist\n Position: 39",
The sql looks like:
update "public"."auth_login_user" set
"public"."auth_login_user"."failed_login_count" = ? where
"public"."auth_login_user"."login_name" = ?
and when I was trying to play with direct sql, I got working:
String sql = "update public.auth_login_user set failed_login_count = 0
where public.auth_login_user.login_name = '" + credentials.getUsername() +
"'";
dsl.execute(sql);
which failes as soon as I add table as prefix to columname, i.e "...
auth_login_user.failed_login_count = 0 ..." fails.
I guess I'm supposed to alter the jooq's update command to have no
schema/table name here... or there is something else wrong here.
btw similar select (and delete) work just fine:
dsl.select(AUTH_LOGIN_USER.LOGIN_NAME,
AUTH_LOGIN_USER.FAILED_LOGIN_COUNT).from(AUTH_LOGIN_USER)
.where(AUTH_LOGIN_USER.LOGIN_NAME.eq(credentials.getUsername())).execute());
db is pstgresql 9.6.2 on OSX
--
You received this message because you are subscribed to the Google Groups "jOOQ
User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.