Click here to Skip to main content
15,887,083 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
table in db as below,

CREATE TABLE [dbo].[STS_ADDRESS_BOOK](
[AB_ID] int NOT NULL IDENTITY(1,1) CONSTRAINT primarykey PRIMARY KEY,
[AB_NAME] [varchar](100),
[AB_EMAIL] [varchar](100),
[AB_FAX] [varchar](100),
[AB_ADDRESS][varchar](max),
[AB_PHONE][varchar](16)
)
-----------------------------------------------------
then sp,
--------------------------------------------------------
GO
IF OBJECT_ID ('dbo.selectAddressBookInformation1')IS NOT NULL
DROP PROC selectAddressBookInformation1
GO

CREATE PROC selectAddressBookInformation1 @columnvalue varchar(100),
@searchword varchar(100)
AS

exec ('select* from STS_ADDRESS_BOOK where' +@columnvalue+' LIKE %' + @searchword + '%')

this command executed successfully. but when execute sp using,
---------------------------------------------------------------------------
exec selectAddressBookInformation1 @columnvalue=[AB_NAME],@searchword='b'

get error as
--------------------------------------
Incorrect syntax near the keyword 'LIKE'. why? what is the mistake?
Posted

1 solution

hiii
replace this line

exec ('select* from STS_ADDRESS_BOOK where' +@columnvalue+' LIKE %' + @searchword + '%')

with

exec ('select * from STS_ADDRESS_BOOK where ' +@columnvalue+' LIKE ''%' + @searchword + '%''')


you will get correct ans
 
Share this answer
 
Comments
hasbina 25-Sep-12 7:06am    
Thank you very much Ganesh...
Ganesh Nikam 25-Sep-12 7:07am    
always welcome

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900