C# 通过internet浏览mysql表的最快方式是什么?

C# 通过internet浏览mysql表的最快方式是什么?,c#,mysql,visual-studio,C#,Mysql,Visual Studio,假设我有一个MySQL服务器,其中一个表有超过100万条记录。为了便于说明,假设这些是产品。为了简单起见,该表只有3列: 产品标识-名称-价格 假设我有一个表显示信息。通过一个文本框,每次按键,我都不想选择包含该文本框中字符串的产品,此外,该文本框可以有多个搜索字符串(最多3个)除以一个字符“^”,因此如果该文本框有一个类似“st^b^ry”的字符串它将选择包含“st”、“b”和“ry”的产品 我这样问: SELECT product_id, name, pri

假设我有一个MySQL服务器,其中一个表有超过100万条记录。为了便于说明,假设这些是产品。为了简单起见,该表只有3列:

产品标识-名称-价格

假设我有一个表显示信息。通过一个文本框,每次按键,我都不想选择包含该文本框中字符串的产品,此外,该文本框可以有多个搜索字符串(最多3个)除以一个字符“^”,因此如果该文本框有一个类似“st^b^ry”的字符串它将选择包含“st”、“b”和“ry”的产品

我这样问:

SELECT 
    product_id, 
    name,   
    price
FROM 
    products
WHERE 
    name LIKE %{Param1}%
    AND name LIKE %{Param2}%
    AND name LIKE %{Param3}%
ORDER BY 
    name ASC
在本地,我想这很好,但当程序在其他地方使用时,每次按键后,查询和表的加载都会花费很长时间。所以

  • 最好的方法是什么
  • 有没有更好的方法来得到我想要的,而不是3个“喜欢”或者是它 对,我是怎么做到的
更新

我检查了Loathing发布的问题,根据我阅读的内容,最佳解决方案是:

SELECT name FROM table
WHERE MATCH (name) AGAINST ('keyterm');

具有全文索引(使用MyISAM引擎)。但问题是它不会显示部分条目。如果我有一个叫做“1/2蓝草莓”的产品,在关键术语中我有“a”(作为一个例子),什么都不会出现。我不希望它只是寻找文字,但每一个记录包含任何我想要的,即使是一个字母

您是否研究过异步查询@我甚至不知道如何使用这些,但我会研究一下。讨厌,我更新了问题。至少现在我有了一个想法:)我以前没有使用过FTS,但这看起来很有希望:这有时会很有用,但对我来说(在研究了更多的东西之后),最好是加载我将要使用的每个记录并使用表中的过滤器。无论如何,谢谢你:)