aboutsummaryrefslogtreecommitdiff
path: root/qlite
diff options
context:
space:
mode:
Diffstat (limited to 'qlite')
-rw-r--r--qlite/src/query_builder.vala10
1 files changed, 8 insertions, 2 deletions
diff --git a/qlite/src/query_builder.vala b/qlite/src/query_builder.vala
index dbfdef2a..75fe0499 100644
--- a/qlite/src/query_builder.vala
+++ b/qlite/src/query_builder.vala
@@ -98,10 +98,16 @@ public class QueryBuilder : StatementBuilder {
}
public QueryBuilder limit(int limit) {
+ if (this.limit_val != 0 && limit > this.limit_val) error("tried to increase an existing limit");
this.limit_val = limit;
return this;
}
+ public QueryBuilder single() {
+ this.single_result = true;
+ return limit(1);
+ }
+
public int64 count() {
this.column_selector = @"COUNT($column_selector) AS count";
this.single_result = true;
@@ -117,8 +123,8 @@ public class QueryBuilder : StatementBuilder {
return new RowOption(row_());
}
- public T get<T>(Column<T> field) {
- return row()[field];
+ public T get<T>(Column<T> field, T def = null) {
+ return row().get(field, def);
}
internal override Statement prepare() {