  def self.get_value(user_id, category, key)

    SqlHelper.validate_token([user_id, category, key])

    con = []
    con << "(user_id=#{user_id})"
    con << "(category='#{category}')"
    con << "(xkey='#{key}')"

    setting = Setting.where(con.join(' and ')).first

    return setting.xvalue unless setting.nil?

    return nil
  end
The software constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component.