     ///     - keys: A sequence of primary keys.
     /// - returns: The number of deleted rows
     @discardableResult public static func deleteAll<Sequence: Swift.Sequence>(_ db: Database, keys: Sequence) throws -> Int where Sequence.Iterator.Element: DatabaseValueConvertible {
-        guard let statement = try! makeDeleteByPrimaryKeyStatement(db, keys: keys) else {
+        guard let statement = try makeDeleteByPrimaryKeyStatement(db, keys: keys) else {
             return 0
         }
         try statement.execute()

        
        let whereClause = whereClauses.joined(separator: " OR ")
        let sql = "SELECT \(defaultSelection) FROM \(databaseTableName.quotedDatabaseIdentifier) WHERE \(whereClause)"
        let statement = try! db.makeSelectStatement(sql)
        statement.arguments = StatementArguments(arguments)
        return statement
    }

        
        let whereClause = whereClauses.joined(separator: " OR ")
        let sql = "DELETE FROM \(databaseTableName.quotedDatabaseIdentifier) WHERE \(whereClause)"
        let statement = try db.makeUpdateStatement(sql)
        statement.arguments = StatementArguments(arguments)
        return statement
    }
