MySQL准备语句与存储过程性能

时间:2009-10-05 11:00:15

标签: java mysql optimization stored-procedures prepared-statement

我有一个旧的MySQL 4.1数据库,其中包含几百万行的表和一个连接到此数据库的旧Java应用程序,并通过简单的SQL查询频繁地从此表中返回数千行(即{ {1}}。我认为Java应用程序使用客户端预处理语句,但是正在考虑将其切换到服务器,并且在提到的示例中,first_name的值将根据用户输入的内容而有所不同。

我想加快select查询的性能,并想知道我是否应该切换到Prepared Statements或Stored Procedures。什么是更快/更少资源密集(或两者的组合更好)是否有一般的经验法则

2 个答案:

答案 0 :(得分:2)

你的索引是first_name,对吗?与在预准备语句和存储过程之间进行选择相比,这将加快您的查询速度。

答案 1 :(得分:0)

如果您只需要担心一个查询,那么您应该能够实现两个备选方案(当然,在您的测试平台上!)并查看哪一个可以提供最佳性能。

(我的猜测是虽然......会有很大差异)。