Giving oral medication to some pets is very difficult. It can also be tricky to remember to give each dose. So I understand why clients want me to just give their pet a shot rather than making them give medicine a couple of times per day. But it's not as easy as many might think.
Most medicines take time to work, anywhere from a few days to several weeks. Most medications have a "half-life" measured in hours. This means that there are X hours before half of the drug is cleared from the body. Then the same X hours before half of the remaining is cleared. At some point the medication will be reduced below a therapeutic threshold where it will have any beneficial effect.
Antibiotics must stay above this threshold for at least a week and often several weeks in order to result in the death of all bacteria. Anti-inflammatory medications have to stay above a certain concentration in order to keep inflammation in the body reduced effectively. If the therapeutic blood levels are not maintained for an appropriate period of time therapy may fail or be less effective.
Some drugs are removed by normal body processes in a matter of a few hours. In order to keep the levels high in the bloodstream the medication must be given several times per day. Other drugs take longer to clear and so we can decrease the frequency of use to twice daily or even once daily. How often we give medications is entirely dependent on the drug's half-life in the body and how well we can keep it above a minimum therapeutic concentration. If you miss a dose then the concentration dips below this level, allowing bacteria to grow, inflammation to return, and potentially prolonging therapy.
Most injectable drugs differ only in the route of administration. Both an oral or injectable cephalosporin antibiotic need to be given every 8-12 hours to be effective. How we give it doesn't change what the body does to break it down and remove it, so while giving an injection at the vet clinic is easier than having to give pills at home, it isn't going to treat most problems.
With all of that being said, there are a few long-acting medications we can use. There are two different kinds of steroids that will last for 7-14 days, and are often used as a quick fix for hot-spots, itching, or similar skin problems. These are a nice option when you don't have a frequently recurring issue and want to help the pet quickly but don't want the client to have to give daily medications. The down-side to these injections is that once it's in the body you can't take it out, and using them will prevent you using oral steroids for several weeks. Oral medications allow more precise dosing changes to be done on a daily or weekly basis if needed.
There is also a long-acting antibiotic, currently used in the US under the brand name Convenia. One injection is equivalent to two weeks of oral antibiotics. This probably sounds miraculous and many people reading this are probably wondering why we don't use this for every infection. That's a great question and there are legitimate answers. First, no antibiotic is effective against every kind of infection. There are so many different kinds of antibiotics because some work better in one part of the body or against certain bacteria than other antibiotics. We use antibiotics based on the type and location of the infection, sometimes after performing a culture to test the effectiveness of several medications against the bacteria. Convenia works well for skin infections, urinary infections, and abscesses, but won't work well for infections in the mouth, respiratory infections, bone infections, or most other kinds of problems. So while it's great in certain circumstances, it's not a cure-all and will only be recommended if it's appropriate. Also, Convenia is quite a bit more expensive than most other antibiotics, which can be a deal-breaker for some clients. A $40 injection compared to $20 of pills probably is worthwhile to most people with a small dog or cat. But a $100 injection compared to $40 worth of pills is a completely different situation.
I bring all of this up because I frequently get asked "Well, can't you just give him a shot? I can't give him pills." I really, really wish that I could! But most injections that I give will last for 8-24 hours (depending on the drug) so the client will still have to end up giving pills later that day or by the next day. While injections are simple, they will rarely fix the problem with one shot.