Veritabanına bir tarih eklemek istiyorum. Ama sadece zaman olmayan tarih.Tarih: Oracle Veritabanı Türü Tarih
DateTime değişken türüne sahipseniz, ancak 00:00:00 saatiyle ekler.
Bunu denedim ama devam et bana giriş hatası veriyor.
INSERT INTO BNR(EUR,DATE_API) VALUES (4.2546 , to_date('2016/30/03','DD-MON-YY'));
Bu değişken benim tarih
DateTime date_bnr = (from cube in doc.Descendants(d + "Cube")
from rate in cube.Elements(d + "Rate")
where
((DateTime)cube.Attribute("date")).Date == yesterday
&&
(string)rate.Attribute("currency") == "EUR"
select ((DateTime)cube.Attribute("date")).Date
).FirstOrDefault();
var datebnr = date_bnr.ToShortDateString(); // what I tried
var dt = date_bnr.ToString("DD-MON-YY"); // what I tried
Ve bu Girdi hiçbir zaman bileşenine sahip olduğunu doğrulamak için bir check
sınırlaması ekleyebilir Veritabanı
string insert_bnr = "INSERT INTO BNR(EUR,DATE_API) VALUES (:value,:datee) ";
OracleCommand cmd = new OracleCommand(insert_bnr, con);
OracleParameter bnr_value = new OracleParameter();
bnr_value.OracleDbType = OracleDbType.Varchar2;
bnr_value.Value = bnr.ToString();
OracleParameter bnr_date = new OracleParameter();
bnr_date.OracleDbType = OracleDbType.Date;
bnr_date.Value = dt;
cmd.Parameters.Add(bnr_value);
cmd.Parameters.Add(bnr_date);
cmd.ExecuteNonQuery();
Oracle hep gece yarısı oldu bile bir zaman var tarihleri. Başka bir konu olup olmadığını göster. To_date ('2016/30/03', 'DD-MON-YY') 'ile neden sahip olduğunuz dizgi ile uyuşmayan bir biçim maskesi kullanıyorsunuz? ToShortDateString() işlevi nedir? Ve neden bu parametreyi bir tarih yerine bir dize olarak ayarlıyorsunuz? –
"2016/30/03", "DD-MON-YY" biçim dizisiyle eşleşmiyor, "giriş hatası" nedir? evet ise, bir istisna var mı? – dlatikay
Hata "SQL hatası: ORA-01861: değişmez biçim dizesi ile eşleşmiyor" ve ToShortDateString() yalnızca tarih –