The correct answer may be that you put the two word in an \mbox{keep together}. Then you also avoid hyphenation (but not overfull lines).
The flip side of defining such words as macro, is that macros eat spaces. Therefore, you have to write the command \MSaccess{} in you text. Instead you may use the package xspace, and define the command:
\newcommand{\MSaccess}{\textsc{ms~access}\xspace}
Unfortunately, there is situations where xspace does not work, and may be it is better to define the command using def:
\def\MSA/{\mbox{\textsc{ms~access}}}
Now you can write \MSA/ (notice the slash), and LaTeXwill not eat the space. If you use small caps, be sure that the font you use has real small caps, and of course, small caps has to be letterspaced (see Bringhurst, The Elements of Typographic Style).
I agree with Anon in his answer. Typographically it is better to have a line break between MS and Access than have a sloppy paragraph or an overfull line (a line sticking out in the right margin), or even worse
that `Ac-
cess` is hyphenated.
I suggest that you write your article, and when your are finished, as the last thing you do when proof reading, is to check if you have some places where you have a line break between MS and Access and then put the words in an \mbox{MS Access}.
This MWE demonstrates some of the differencies:
\documentclass[onepage]{article}
\usepackage{lmodern,xspace}
\usepackage[utf8]{inputenx}
\usepackage[T1]{fontenc}
\newcommand{\MSaccess}{\textsc{MS}~Access} % NB! \textsc has no effect
\newcommand{\MSaccessx}{\textsc{MS}~Access\xspace}
\def\MSA/{\mbox{\textsc{ms~access}}}
\begin{document}
\thispagestyle{empty}
Here is a text which only purpose is to demostrate that
\MSaccess without \emph{xspace} eats spaces.
Here is the text which only purpose is to demostrate the wonders
\emph{xspace} do for \MSaccessx with \emph{xspace} eats spaces. But look here
«\MSaccessx», and how we get a space before the nice, French sitation mark (NB!
\emph{xspace} may be configured to avoid this).
And here is the eminent `def`-macro that does not eat any spaces, as I state,
\MSA/ is OK, and does not fail because of strange punctuation, «\MSA/».
\end{document}

\newcommand{\msaccess}{MS~Access}, which you could than use in your text. If you decide not to secure that space you just change it inside the definition. – Ronny Feb 23 at 21:37\msaccessin every occurrence ;) – Ronny Feb 23 at 21:45