الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في تنفيذ البروسيجر

بدأه firstabed في 31 يوليو 2008 · 0 رد · 563 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1

CREATE PROCEDURE [dbo].[comparrec] AS

begin

declare @d1 datetime ,@d2 datetime,@t1 datetime ,@t2 datetime

select @d1= replace (str(datepart(yyyy,getdate()),4)+

str(datepart(mm,getdate()),2)+

str(datepart(dd,getdate()),2),' ',0)

set @d2 = (select top 1 datein from tdtab

order by datein desc)

select @t1= replace( str(datepart(hh,getdate()),2)+

str(datepart(mi,getdate()),2)+

str(datepart(ss,getdate()),2),' ',0)

set @t2 = (select top 1 timein from tdtab

order by timein desc)

IF( (select datediff (dd,@d2 ,@d1)) =0 )

IF ( (select (datediff (hh,@t1,@t2)/24) ) >1)

begin

insert into dbo.a

values ('no transaction within one hour')

end

end

GO

عند تنفيذ البروسيجر ينتج الخطا التالي

Server: Msg 242, Level 16, State 3, Procedure comparrec, Line 19

The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.

علما بان البروسيجر يعمل عند حذف الجزء باللون الاحمر

وهذا البروسيجر يعمل على فحص قيمة في جدول بحيث يضيف سجل لجدول اخر عندما لايكون هناك عمليات ادخال على جدول tdtab

لمدة ساعة

عند فحص التاريج يعمل وعند فحص الوقت لا يعمل

مواضيع مشابهة