PDA

View Full Version : نمایش تاریخ در دیتاگرید



mitra285
پنج شنبه 22 اردیبهشت 1390, 13:46 عصر
سلام دوستان
من تاریخ رو به صورت 13900120 یعنی (20/01/1390) در بانک SQL ذخیره می کنم نوع فیلد هم از نوع char است. حالا اگر بخوام تو دیتاگرید نمایش بدمشون چطوری می تونم اون ستونی که تاریخ رو نشون می ده طوری تنظیم کنم که تاریخ رو به صورت صحیح یعنی 20/01/1390 نمایش بده.

با تشکر

salam333
پنج شنبه 22 اردیبهشت 1390, 13:54 عصر
از دستور substringاستفاده كنيد

salam333
پنج شنبه 22 اردیبهشت 1390, 13:55 عصر
البته بهتره زمان ورود آن را تنظيم كنيد

mitra285
پنج شنبه 22 اردیبهشت 1390, 14:43 عصر
ببخشید من زیاد وارد نیستم کجا باید این دستور رو وارد کنم، می شه بیشتر راهنمایی کنید.

alimanam
پنج شنبه 22 اردیبهشت 1390, 15:36 عصر
با سلام

این روش رو میتونی استفاده کنی .

Public Class Form1

Private cnnString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\db.mdb"
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim ad As New OleDb.OleDbDataAdapter("Select Datee from Table1", cnnString)
Dim dt As New DataTable
ad.Fill(dt)
dg.DataSource = dt
For i As Integer = 0 To dt.Rows.Count - 1
Dim str As String = dg.Item(0, i).Value
dg.Item(0, i).Value = String.Format("{0}{1}{2}", str.Substring(0, 4), "/" & str.Substring(4, 2), "/" & str.Substring(6, 2))
Next
End Sub

End Class


موفق باشید ./

barbodsoft.com
پنج شنبه 22 اردیبهشت 1390, 18:52 عصر
با اجازه جناب alimanam
روش خیلی بهینه تری هم وجود داره و نیازی به استفاده از حلقه فور نیست.


SELECT SUBSTRING('13581211', 1, 4) + '/' + SUBSTRING('13581211', 5, 2) + '/' + SUBSTRING('13581211', 7, 2) AS DATE, TABLENAME.* FROM TABLENAME

از دستور SELECT بالا استفاده کنید.
توضیح : بجای 13581211 فیلد تاریخ رو وارد کنید . ضمنا علامت ' دورش رو هم بردارید. این کد TABLENAME.* هم برای نمایش سایر ستون های جدول هست.

موفق باشید.

alimanam
جمعه 23 اردیبهشت 1390, 01:18 صبح
با سلام

بله عزیز این روشی که گفتین بهینه تر است (استاندارد Transact-SQL هستش ) . در اکسس به جای SubString میشه از MID استفاده کرد یعنی به این شکل میشه :

Select MID(datee, 1, 4) + '/' + MID(datee, 5, 2) + '/' + MID(datee, 7, 2) AS datee FROM Table1

موفق باشید ./