Example #1
0
// LastRowId returns the Id of the last inserted row in database.
func LastRowId(conn *sqlite.Conn) (id int64, err error) {
	stmt, err := conn.Prepare(LastRowIdSQL)
	if err != nil {
		return
	}
	defer stmt.Finalize()
	return LastRowIdFromStmt(stmt)
}
Example #2
0
// ReadMultiple executes sql and reads multiple rows.
// consumer may consume either business objects or db.Etagger objects.
// For the latter case, row must also implement RowForWriting
func ReadMultiple(
	conn *sqlite.Conn,
	row RowForReading,
	consumer functional.Consumer,
	sql string,
	params ...interface{}) error {
	stmt, err := conn.Prepare(sql)
	if err != nil {
		return err
	}
	defer stmt.Finalize()
	if err = stmt.Exec(params...); err != nil {
		return err
	}
	return consumer.Consume(ReadRows(row, stmt))
}