    # File lib/sqlite3/statement.rb, line 85
        def bind_param( param, value )
          must_be_open!
          reset! if active?
          if Fixnum === param
            case value
              when Bignum then
                @driver.bind_int64( @handle, param, value )
              when Integer then
                if value >= (2 ** 31)
                  @driver.bind_int64( @handle, param, value )
                else
                  @driver.bind_int( @handle, param, value )
                end
              when Numeric then
                @driver.bind_double( @handle, param, value.to_f )
              when Blob then
                @driver.bind_blob( @handle, param, value )
              when nil then
                @driver.bind_null( @handle, param )
              else
                @driver.bind_text( @handle, param, value )
            end
          else
            param = param.to_s
            param = ":#{param}" unless param[0] == ?:
            index = @driver.bind_parameter_index( @handle, param )
            raise Exception, "no such bind parameter '#{param}'" if index == 0
            bind_param index, value
          end
        end