title: Purpose of placeholders in Flyway database migrations
body: <p>The <a href="https://flywaydb.org/" rel="nofollow noreferrer">Flyway</a> database migration tool includes a feature for <a href="https://flywaydb.org/documentation/migrations#placeholder-replacement" rel="nofollow noreferrer">placeholder replacement</a>. </p>
  
  <p>What is the purpose of the placeholder? In what kind of real-world practical scenarios might the placeholder be useful? Can you describe some simple examples to demonstrate usefulness?</p>
  
  <p>The example at bottom of <a href="https://flywaydb.org/documentation/migrations#placeholder-replacement" rel="nofollow noreferrer">this doc page</a> shows the use of a placeholder in SQL. How would we set the value to be inserted in place of that placeholder? Is the source of the placeholder's value defined as Environment Variables, Java variables, a <a href="https://en.wikipedia.org/wiki/.properties" rel="nofollow noreferrer">Java <code>.properties</code> file</a>, or something else? </p>
  
  <p>Does a placeholder hold only plain text, no other data types?</p>
  
  <p>Can a placeholder be used only in an SQL file? Can a placeholder be used in the SQL strings within Java code? </p>
  
  <p>Are there other places where a placeholder can be used?</p>
  
  <p>I found this Question, <a href="https://stackoverflow.com/q/9418173/642706">How do placeholders work in Flyway?</a>, but it does not give me a clear picture.</p>