View Full Version : درج تاریخ در دیتابیس
asemoon barooni
یک شنبه 27 شهریور 1390, 18:46 عصر
سلام
من می خواستم بدونم راهی هست که هنگام درج یک فیلد از نوع datetime زمان را حذف کنیم یعنی نذاریم زمان در فیلد درج بشه فقط تاریخ درج بشه آیا امکان داره؟؟
حمیدرضاصادقیان
دوشنبه 28 شهریور 1390, 10:47 صبح
سلام.
خوب شما چرا نوع فیلدتون رو Date در نظر نمیگیرید؟
asemoon barooni
دوشنبه 28 شهریور 1390, 16:41 عصر
آقای صادقیان من از sql server 2005 استفاده میکنم از sql server 2008 استفاده نمی کنم تا از این نوع داده استفاده کنم واسه همین با این مسئله به مشکل برخوردم برای همین میخوام بدونم راهی وجود داره که فقط تاریخ ذخیره بشه و زمان در نظر گرفته نشه؟؟؟
حمیدرضاصادقیان
سه شنبه 29 شهریور 1390, 08:07 صبح
شما میتونید موقع فراخوانی فقط تاریخ رو بخونید یا روی تاریخ هرکاری خواستید انجام بدید.
به جز این ، کد زیر رو ببینید میتونید موقع Insert کردن به این شکل تبدیل انجام بدید و در دیتابیس اضافه کنید.
declare @dt datetime
set @dt = convert(datetime,convert(datetime,'20/07/2009',103),120)
select @dt
یا به این شکل بنویسید.
INSERT INTO test(dt)
VALUES(CONVERT(VARCHAR(11),GETDATE(),110))
در این دو روش مقدار زمان رو صفر میکنه که شما هنگام فراخوانی میتونید این مقدار تاریخ رو فقط به کاربر نمایش بدید.
asemoon barooni
سه شنبه 29 شهریور 1390, 10:02 صبح
خیلی ممنون آقای صادقیان از راهنمایی که کردید
کدی که گفتید اگه تاریخی با زمان بهش بدیم مثلا
select convert(datetime,convert(datetime,Getdate(),103),1 20)
دیگه زمان رو صفر نمی کنه ...ولی اگر به این صورت تغییر بدیم زمان رو هم صفر می کنه :
SELECT CONVERT(DATETIME, CONVERT(int, GETDATE()))
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.