我正在尝试使用JSP和SQL Server实现搜索功能。我需要使用电话号码等关键字进行搜索。但我的讲师希望我以不同的方式实现搜索功能。
假设 - 我在数据库123456
中有一个电话号码,我在搜索框123
中键入了该号码。该过程应该能够检索具有以123
开头的电话号码的所有记录。
到目前为止我尝试了以下内容,但我必须输入要检索的结果的完整数字。我怎样才能改变我的程序,使其按照我的讲师的方式工作?
USE [test]
GO
/****** Object: StoredProcedure [dbo].[add_data] Script Date: 15-11-2016 10:14:51 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE Procedure [dbo].[select_data]
(
@thePhoneNumber VARCHAR(200),
@theName VARCHAR(200) OUT
)
As
Begin
SELECT @theName= Name FROM real WHERE PhoneNumber=@thePhoneNumber
End
答案 0 :(得分:1)
我不知道这是否是您正在寻找的答案,但对于正常的SQL查询,您应该在每次要搜索其余内容时使用%
符号。
例如,在此上下文中,您应该使用:
SELECT phonenumber FROM real WHERE phonenumber LIKE '123%'
希望它有助于:)
答案 1 :(得分:1)
在这种情况下,喜欢运营商会帮助你。
USE [test]
GO
/****** Object: StoredProcedure [dbo].[add_data] Script Date: 15-11-2016 10:14:51 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE Procedure [dbo].[select_data]
(
@thePhoneNumber VARCHAR(200),
@theName VARCHAR(200) OUT
)
As
Begin
SELECT @theName= Name FROM real WHERE PhoneNumber like '@thePhoneNumber+'%'
End