Quantcast
Channel: Visual C# forum
Viewing all articles
Browse latest Browse all 31927

Problem occurs when I try to fetch date information from database

$
0
0

Hello my dear programmer friends,

I recently need to fetch date information from database (yyyy-mm-dd). I have saved my date information like this, for example 01 April 2014 <2014-04-01>

I have a calender in my web page in which I need to fetch information by using choosen date. Basically like this: It is a reservation page. Client has to specify a date. According to that date, he will be able to choose what is available.

This is what works:

SqlCommand cmd = new SqlCommand("Select Randevular.saatID,randevuSaat,hizmetAdi,hizmetSure,Randevular.personelID,personelAdSoyad,randevuTarih from Personeller Inner Join Randevular  on Randevular.personelID=Personeller.personelID Inner Join Saatler on Randevular.saatID=Saatler.saatID Inner Join Hizmetler on Randevular.hizmetID=Hizmetler.hizmetID Where Randevular.personelID=7 and Randevular.randevuTarih='2014-04-01'", cnn);

But in here, date is already specified in the source code. I tried to convert the date information I got in the SQL, but it didn't worked. Like this:

Session["cid"] = Convert.ToInt32(drdCalisanSec.SelectedValue);

Session["tarih"] = Calendar1.SelectedDate;

SqlCommand cmd = new SqlCommand("Select Randevular.saatID,randevuSaat,hizmetAdi,hizmetSure,Randevular.personelID,personelAdSoyad,CONVERT(nvarchar,randevuTarih,106) as RandevuTarihi  from Personeller Inner Join Randevular  on Randevular.personelID=Personeller.personelID Inner Join Saatler on Randevular.saatID=Saatler.saatID Inner Join Hizmetler on Randevular.hizmetID=Hizmetler.hizmetID Where Randevular.personelID='" + Session["cid"] + "' and Randevular.randevuTarih='"+Session["tarih"]+"' ", cnn);

After that I tried an another solution. I tried to convert the date I got in C# by doing this:


string dateForSql = "";

Array months = Array.CreateInstance( typeof(String), 12 );
            months.SetValue( "Ocak", 0 ); //January
            months.SetValue( "Şubat", 1 ); //February
            months.SetValue( "Mart", 2 ); //March
            months.SetValue( "Nisan", 3 ); //April
            months.SetValue( "Mayıs", 4 ); //May
            months.SetValue( "Haziran", 5 ); //June
            months.SetValue( "Temmuz", 6 ); //July
            months.SetValue( "Ağustos", 7 ); //August
            months.SetValue( "Eylül", 8 ); //September
            months.SetValue( "Ekim", 9 ); //October
            months.SetValue( "Kasım", 10 ); //December
            months.SetValue( "Aralık", 11 ); //November

            txtRanTarih.Text = Calendar1.SelectedDate.ToString("dd MMMM yyyy");
            Session["tarih"] = Calendar1.SelectedDate;
            Label1.Text = Session["tarih"].ToString();
            string date = txtRanTarih.Text;
            dateForSql = dateForSql + date.Substring(date.Length-4) + "-";

foreach (string month in months)
            {
                if (date.Contains(month))
                {
                    if (Array.IndexOf(months, month) + 1 < 10)
                    {
                        dateForSql = dateForSql + "0" + (Array.IndexOf(months, month) + 1).ToString() + "-";
                        break;
                    }
                    else
                    {
                        dateForSql = dateForSql + (Array.IndexOf(months, month) + 1).ToString() + "-";
                        break;
                    }
                }
            }
            dateForSql = dateForSql + date.Substring(0, 2);

I put the <dateForSql> variable into the Sql Command like this:

SqlCommand cmd = new SqlCommand("Select Randevular.saatID,randevuSaat,hizmetAdi,hizmetSure,Randevular.personelID,personelAdSoyad,CONVERT(nvarchar,randevuTarih,106) as RandevuTarihi  from Personeller Inner Join Randevular  on Randevular.personelID=Personeller.personelID Inner Join Saatler on Randevular.saatID=Saatler.saatID Inner Join Hizmetler on Randevular.hizmetID=Hizmetler.hizmetID Where Randevular.personelID='" + Session["cid"] + "' and Randevular.randevuTarih='"+dateForSql+"' ", cnn);

But non of these has worked. Can you guys help me with this?



Viewing all articles
Browse latest Browse all 31927

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>