Как проверить почтовый индекс в текстовом поле и получить соответствующие выходные данные штата / города с соответствующими ярлыками - PullRequest
0 голосов
/ 15 апреля 2019

Я пытаюсь написать довольно простую программу, которая извлекает данные из моей базы данных SQL Server.И выводит правильные штат и город в соответствующих метках из действительного почтового индекса, введенного в текстовое поле.

Вот код, с которым я возился.Это, очевидно, не работает, я просто пробовал.

Я смог заполнить комбинированный список всеми состояниями, связанными с почтовым индексом / городом, но это все.

// Connection string.
String cnStr;
SqlConnection cn = new SqlConnection();

cnStr = "Data Source=000.00.000.00;Initial Catalog= ;User ID= ;Password= ";

// Assign Connection string to the connection object
cn.ConnectionString = cnStr;

// Open the connection to the SQL Server
cn.Open();

// This statement creates the command object and passes in the SQL statement
// then associates the command to the cn connection object
SqlCommand cmd = new SqlCommand("select distinct state, city from tblZipcodes order by state", cn);

// Open a DataReader
SqlDataReader rdrZip = cmd.ExecuteReader();

cn.Close();

Проверка почтового индекса, введенного в текстовое поле, с выводом состояния и города в соответствующие метки из SQL Server.

1 Ответ

2 голосов
/ 15 апреля 2019

Всегда используйте параметры, никогда не создавайте SQL-запрос без параметров, потому что он оставляет ваше приложение широко открытым для sql injection.
Вы должны использовать предложение where, как это

var sql = "select distinct state, city from tblZipcodes where zipcode = @ZipCode";

using (SqlCommand cmd = new SqlCommand(sql))
{
    cmd.CommandType = CommandType.Text;
    cmd.Parameters.Add(new SqlParameter("@ZipCode", SqlDbType.VarChar) { Value = myZipCode.Text });

    SqlDataReader rdrZip = cmd.ExecuteReader();
}

Используйте SqlDbType.NVarChar, если ваш тип столбца NVarChar вместо VarChar

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...