I think there are multiple solutions that have advantages and disadvantages for you. So I would just like to show you three ways of how to get data into a certain predefined string.
1. Use the "$" notation
var firstName = "Luke";
var lastName = "Skywalker";
var sentenceWithFullName = $"The Jedi's name is {firstName} {lastName}";
The sentence will be: "The Jedi's name is Luke Skywalker"
This notation comes close to the notation you have in your database but there is a very important difference: The example above is done in code, so is the definition of the sentenceWithFullName. In your case you fetch the "sentence" from your database and the above notation will not work in its way.
2. Use String.Format
var firstName = "Luke";
var lastName = "Skywalker";
var sentenceFromDatabase = "The Jedi's name is {0} {1}";
var sentenceWithFullname = string.Format(sentenceFromDatabase, firstName, lastName);
The sentence will be: "The Jedi's name is Luke Skywalker"
How does it work? The string.Format() replaces the {x} with the given parameters. The first parameter is the string that you want to format, the rest of the parameters are the values you want to be part of the formated string. But be careful: If you want to replace for example five values, you need placeholder from {0}, {1}, {2}, {3}, {4} and give five additional parameters to the string.Format function. Just like this:
var sentenceWithFullname = string.Format("The Jedi's name is {0} {1} and his favorites numbers are: {2}, {3}, {4}", firstName, lastName, "0815", "1337", "4711");
If the number of placeholders and the number of parameters do not fit it can end up in an exception.
3. Use string.Replace()
var firstName = "Luke";
var lastName = "Skywalker";
var sentenceWithFullName = "The Jedi's name is {firstName} {lastName}";
sentenceWithFullName = sentenceWithFullName.Replace("{firstName}", firstName);
sentenceWithFullName = sentenceWithFullName.Replace("{lastName}", lastName);
The sentence will be: "The Jedi's name is Luke Skywalker"
This approach is straightforward. You take the string from database and replace the placeholders with the corresponding values coming from properties or variables.
My suggestion
So if we now try to fit those solutions to your problem, I would not go for solution one, as your predefined string comes from a database and is not defined in your code. So the above example will not work for you.
If you have a chance to change the values in the database I would suggest that you go for solution number two. So define the string values with {0} to {n} placeholders and use the String.Format() function on it. If the database string format is fix, this will also not work for you.
In my opinion I do not really like the string.Replace() function, but for your case it could solve your issue. Of course it contains a lot of magic strings and is very vulnerable to any change on database site.