- (loop for row = (read-cursor-row cursor result-types)
- while row
- collect row
- finally
- (unless (null (wait-for-query-results connection))
- (close-postgresql-connection connection)
- (error 'clsql-sql-error
- :database database
- :expression expression
- :errno 'multiple-results
- :error "Received multiple results for query.")))))))
+ (values
+ (loop for row = (read-cursor-row cursor result-types)
+ while row
+ collect row
+ finally
+ (unless (null (wait-for-query-results connection))
+ (close-postgresql-connection connection)
+ (error 'clsql-sql-error
+ :database database
+ :expression expression
+ :errno 'multiple-results
+ :error "Received multiple results for query.")))
+ (when field-names
+ (mapcar #'car (postgresql-cursor-fields cursor))))))))