spring-data-couchbase icon indicating copy to clipboard operation
spring-data-couchbase copied to clipboard

Add support to N1QLExpression for UPDATE statements

Open aaronjwhiteside opened this issue 5 years ago • 0 comments

Background: We use N1QLExpression in our custom base repository

Solution: (from our workaround)

    public N1QLExpression update(String bucketName) {
        N1QLExpression bucket = escapedBucket(bucketName);
        return prefix("UPDATE", bucket.toString());
    }

    public N1QLExpression set(N1QLExpression... expressions) {
        // all the expressions just need to be separated by commas...
        StringBuilder builder = new StringBuilder();
        for (int i = 0; i < expressions.length; i++) {
            builder.append(expressions[i].toString());
            if (expressions.length - 1 > i) {
                builder.append(", ");
            }
        }
        return infix("SET", toString(), builder.toString());
    }

aaronjwhiteside avatar Jan 21 '21 05:01 aaronjwhiteside