Vitamin B12 should not be taken for a long time because any drug has side effects and vitamins are no exception. Long-term use of vitamin B12 may lead to hypokalemia, hyperuricemia, and can even cause gout, in addition to the possibility of drug resistance. If you need it for the treatment of a disease, you can take it under medical advice, but if you are just taking it for your health, there is no need to take it for a long time, because the best source of vitamins is food. Foods containing vitamin B12 include animal liver, skim milk powder, various seafood, cheese, etc. The safety of dietary supplements is much greater than that of drugs. Some patients need to take vitamin B12 for anemia or various neuropathic pains, diabetes, retinal neuropathy, optic nerve atrophy and other diseases, but after taking it for a period of time the condition improves or if the medication is not effective, the medication should be stopped and a doctor should be consulted.