Not all medications can be prescribed on the NHS. However, most cost-effective medications can be found in the NHS Drug Tariff, and so will be made available to you on NHS prescription if your doctor feels there is a clinical need.
However, there will be situations when a doctor makes a decision that a medication on the NHS tariff is not a clinically appropriate choice for a patient. This will always be a clinical decision (ie a decision which made in the best interests of patients) and may be informed by national or local (Oxfordshire Area Prescribing Committee) policy. The doctor who makes this decision should be able to give you a clear explanation for why they have decided that a certain medication which you might have requested cannot be prescribed on the NHS.
There may be a situation in which a patient requests a medication which the doctor decides is not clinically necessary, or one which is not on the NHS Drug Tariff. In this case, as long as it is safe to do so, the medication can be prescribed by the doctor using a private prescription. With a private prescription, the patient will be expected to fund the cost price of the medication. If a private prescription is issued by your doctor, the cost of the medication will be charged by the pharmacist, not the doctor.
Medications for use abroad or for preparing for overseas trips (travel medications) are also not funded by the NHS. However, in the case of travel medications you will also be charged an additional fee of £15 by your doctor for the issuing of a private prescription.