Два слова (два пути): Parameterized Queries
или Prepared Statements
. То, что вы называете это, зависит от того, что вы предпочитаете - они имеют в виду то же самое! Преимущества использования и безопасности от их использования.
Я принимаю то, что я прочитал в вашем вопросе, что это то, что у вас есть. Если ваш элемент управления listbox
содержит список имен, которые находятся в вашей базе данных, которые содержатся только в Items
в вашем listbox
.
Это не рекомендуется дизайн, но позволяет сделать его функции без переделки того, что у вас уже есть.
Для SQL Server
и C#
, код будет выглядеть так:
string commandText = "SELECT * FROM table WHERE firstname = @firstname and lastname = @lastname";
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(commandText, connection);
if (listbox1.SelectedItem == null)
{
// exit since nothing was selected in the listbox to query by
}
var names = listbox1.SelectedItem.ToString().Split(' ');
if (names.Length != 2)
{
// exit since this is not what we want and will yield unexpected results
}
string firstName = names[0];
string lastName = names[1];
command.Parameters.AddWithValue("@firstname", firstname);
command.Parameters.AddWithValue("@lastname", lastname);
// Read information from database...
}
Очевидно, что вы можете понять, почему это не целесообразный выбор дизайна, но он будет работать с учетом того, что вы уже создали.
Что не работает? –
Не могли бы вы уточнить свой вопрос, пожалуйста. Первое имя и фамилия находятся в вашем «списке» и получены из базы данных, но некоторые детали будут приятными. –