c# - mysql 搜索多个字段

标签 c# mysql search select

大家好,我在堆栈溢出中没有发现任何关于以下问题的有用信息。

我想在多个字段中搜索一位客户。 我有一些文本框,可以在其中输入搜索条件。

客户表: 名字 姓氏 工作 ABC 一个一个的 一个一个一个

例如,当我搜索姓名= a,姓氏= b,工作= c时,我想看到我的第一个客户,如果我搜索姓名= a,我想看到每个客户(重点是,如果姓氏和 job 为 null 我无法从查询中获取名称)

我想在我的存储过程中搜索客户,该过程必须填充 GridView 。

我的搜索按钮的 C# 代码:

protected void btnRicerca_Click(object sender, EventArgs e)
{
    GridView1.Visible = true;


    ClienteInfo CI = new ClienteInfo();
    DboUser objdbo = new DboUser();
    int id_cliente = 0;

    txtNomeCliente.Text = CI.nome_cliente;
    txtCognomeCliente.Text = CI.cognome_cliente;
    txtRagioneSociale.Text = CI.ragione_sociale;
    txtVia.Text = CI.via;
    txtCitta.Text = CI.citta;
    txtProvincia.Text = CI.provincia;
    txtCap.Text = CI.cap;
    txtNazione.Text = CI.nazione;
    txtTelefono.Text = CI.recapito_telefonico;
    txtPartitaIva.Text = CI.partita_iva;
    txtCodiceFiscale.Text = CI.codice_fiscale;
    txtEmail.Text = CI.email;
    txtPubblicaAmministrazione.Text = CI.codice_pubblica_amministrazione;
    CI.id_utente = Convert.ToInt64(Session["Id_Utente"]);

    id_cliente = objdbo.getClienteInfo(CI);
    }

最佳答案

看来您必须根据 UI 输入值创建 SQL 查询。 举个例子,如果有人输入名字和姓氏的值,那么你的 SQL 查询应该是这样的

SELECT * FROM customers WHERE name = "a" and surname = "b"; 

如果有人只输入名称,您的 SQL 查询应如下所示。

SELECT * FROM customers WHERE name = "a";

理想情况下,您应该从应用程序管理 SQL 查询。我遇到了类似的经历,我使用解释器模式来生成 SQL 查询。

此外,使用类似的名称搜索总是更好。

例如:从客户中选择*,其中名称如“%a%”

关于c# - mysql 搜索多个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28022549/

相关文章:

c# - 音频文件的独立存储不使用单独的点击事件

Php:分组并添加缺失的字段

javascript - 搜索数组并制作找到和未找到单词的编号列表,Javascript

search - AppleScript 从网页中读取内容

Php 选择 * 喜欢的地方

c# - 下载数据时在 MonoTouch 中显示微调器

c# - 在 DataGrid 上显示 DataTable 列表

python - 如何强制django立即保存而不是在循环后进行批量更新

c# - VS2005 C# 以编程方式更改 app.config 中包含的连接字符串

php - 使用 PHP 和 mySQL 进行全文搜索 - 无法更改表