Here i have to use Procedure that contain different type of variable have different datatype and i have to specify insert command in single quotes(as a string) and execute insert command using this
EXEC sp_executesql @SQLString command inside sp_GpsdataInsert procedure .
Now i have to execute this procedure then i have to get this error
Conversion failed when converting date and/or time from character string.
create proc sp_GpsdataInsert
@dataindication tinyint,
@vichelId varchar(15),
@Datatime datetime,
@lat varchar(15),
@lang varchar(15),
@speed decimal(5,2),
@direction decimal(6,3),
@odometer decimal(9,2),
@Ignition bit,
@digitalInputOne bit,
@digitalInputTwo bit,
@Immobilizer bit,
@GPSValidityStatus char(1)
as begin
DECLARE @SQLString
NVARCHAR(MAX)
SET @SQLString
= 'insert into Tab_'+convert(varchar,getdate(),112) +'([date],dataindication,vichelId,Datatime,lat,lang,speed
,direction,odometer,Ignition,digitalInputOne,digitalInputTwo,Immobilizer,GPSValidityStatus)
values('''+GETDATE()+''','+@dataindication+','+
@vichelId+','+convert(varchar, @Datatime, 109)+','+@lat+','+@lang+','+@speed+','+@direction+','+@odometer+','+@Ignition+','+@digitalInputOne+','+@digitalInputTwo+','+@Immobilizer+','+
@GPSValidityStatus
+')'
EXEC sp_executesql @SQLString
end
Correct Procedure:
Cast each parameter of procedure as varchar because sp_executesql command operate only string data.
SET @SQLString
= 'insert into Tab_'+convert(varchar,getdate(),112) +'([date],dataindication,vichelId,Datatime,lat,lang,speed
,direction,odometer,Ignition,digitalInputOne,digitalInputTwo,Immobilizer,GPSValidityStatus)
values
('''+cast(GETDATE() as varchar)+''','+cast(@dataindication as varchar)+','+
@vichelId+','''+cast(@Datatime as varchar)
+''','+@lat+','+@lang+','+cast(@speed as varchar)+','+cast(@direction as varchar)+','
+cast(@odometer as varchar)+','+cast(@Ignition as varchar)+','+cast(@digitalInputOne as varchar)
+','+cast(@digitalInputTwo as
varchar)+','+cast(@Immobilizer as varchar)+','+
cast(@GPSValidityStatus
as varchar)
+')'
No comments:
Post a Comment