title: sql raiserror specify parameter
body: <p>When i read the example of MSDN <code>raiserror</code>:</p>
  
  <pre><code>RAISERROR (N'This is message %s %d.', -- Message text.
             10, -- Severity,
             1, -- State,
             N'number', -- First argument.
             5); -- Second argument.
  -- The message text returned is: This is message number 5.
  GO
  </code></pre>
  
  <p>Why the doc using <code>%s</code> to specify the  <code>N'number'</code>,and  <code>%d</code> to specify the <code>5</code> -- Second argument</p>
  
  <p>The MSDN write like this: </p>
  
  <blockquote>
    <p>For example, in the following RAISERROR statement, the first argument of N'number' replaces the first conversion specification of %s; and the second argument of 5 replaces the second conversion specification of %d.</p>
  </blockquote>
  
  <p>My question is: How can explain it? Why don't using other like <code>%a</code> or <code>%b</code>.Any other <code>%+apha</code> can replace it.
  I just want to get a meaningful understand.</p>