Подстановочный знак SQL не работает в моей программе на C # - PullRequest
0 голосов
/ 07 ноября 2018

Я обновил свой код с помощью всех вас, но все еще есть проблема, когда подстановочный знак '*' не работает с моей программой:

У меня есть программа на C #, в которой есть массив слов, заданных ей в поле ввода.

Я могу выполнить следующий запрос с подстановочным знаком (*) в SQL Management Studio без проблем, и я получу необходимые результаты:

SELECT Site, StreetAddress, City, State, Zip, PharmacyPhone, MDVersion, 
InstallDate, SiteCodes, SiteNotActive, CloseDate, SiteNotes 
FROM Sites 
WHERE contains(site, '"ev*"' ) OR contains  (StreetAddress, '"ev*"') 
OR contains(city, '"ev*"')

НО при попытке запустить приведенный ниже код в моем c # я не получаю никаких результатов. Что я делаю неправильно? массив будет содержать строку 'ev *'. код c #:

private void btnSearch_Click(object sender, EventArgs e)
    {
        //Get the value from textbox
        string keyword = txtboxKeyword.Text;

        string[] words = keyword.Split(' ');


        try
        {
            switch (words.Length)
            {
                case 1:
                    var select = "SELECT Site, StreetAddress, City, State, Zip, PharmacyPhone, MDVersion, InstallDate, SiteCodes, SiteNotActive, CloseDate, SiteNotes 
                                  FROM Sites WHERE contains(site, @words0) OR contains (StreetAddress, @words0) OR contains(city, @words0)";

                    var conn = new SqlConnection(myconnstr);
                    SqlCommand cmd = new SqlCommand(select, conn);                            
                    cmd.Parameters.AddWithValue("@words0", words[0]);
                    SqlDataAdapter sda = new SqlDataAdapter(cmd);
                    var commandbuilder = new SqlCommandBuilder(sda);
                    var dt = new DataTable();
                    sda.Fill(dt);

                    dataGridSites.ReadOnly = true;
                    dataGridSites.DataSource = dt;
                    dataGridSites.CurrentCell = null;                                                                 
                    break;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...