# File lib/dbi/handles/database.rb, line 67
67:         def execute(stmt, *bindvars)
68:             raise InterfaceError, "Database connection was already closed!" if @handle.nil?
69: 
70:             if @convert_types
71:                 bindvars = DBI::Utils::ConvParam.conv_param(driver_name, *bindvars)
72:             end
73: 
74:             sth = StatementHandle.new(@handle.execute(stmt, *bindvars), true, false, @convert_types)
75:             # FIXME trace sth.trace(@trace_mode, @trace_output)
76:             sth.dbh = self
77: 
78:             if block_given?
79:                 begin
80:                     yield sth
81:                 ensure
82:                     sth.finish unless sth.finished?
83:                 end
84:             else
85:                 return sth
86:             end 
87:         end