Yorumları: 90
Konuları: 17
Kayıt Tarihi: 09-09-2017
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 123 Başlangıç
30-08-2019, Saat: 07:46
(Son Düzenleme: 05-09-2019, Saat: 11:07, Düzenleyen: theSinan.)
S.a
Mssql VeriTabanına Kayıt Eklerken Hata Alıyorum
Tarih Kısmını MSSQL Tarih Formatına
TDateTime TARIH_SAAT;
FormatDateTime("yyyy-mm-dd hh:nn",TARIH_SAAT)
Çevirip Başına 'Tek Tırnak ve Sonuna Tek Tırnak Ekliyorum Şöyle Oluyor '2019-08-30 07:38:22'
Kayıt Ekleme Sorgu Hali
INSERT INTO GOREVDURUMLARI ( BLKODU , BLGRVKODU , Grubu , ADI , Tipi , Baslama_Tarihi, Islem_Suresi , SILINDI ) VALUES( '1', 'Açılış', 'Açılış', 'Açılış', 'Açılış', '2019-08-29 17:02' , '0', '0' ) ;
Hatası Kodu
SQL Server The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
Acaba Nerde Yanlış Yapıyorum
Yardımlarınız için allah razı olsun
Yorumları: 483
Konuları: 80
Kayıt Tarihi: 28-12-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 2.019 Programcı
(30-08-2019, Saat: 07:46)theSinan Adlı Kullanıcıdan Alıntı: S.a
Mssql VeriTabanına Kayıt Eklerken Hata Alıyorum
Tarih Kısmını MSSQL Tarih Formatına
TDateTime TARIH_SAAT;
FormatDateTime("yyyy-mm-dd hh:nn",TARIH_SAAT)
Çevirip Başına 'Tek Tırnak ve Sonuna Tek Tırnak Ekliyorum Şöyle Oluyor '2019-08-30 07:38:22'
Kayıt Ekleme Sorgu Hali
INSERT INTO GOREVDURUMLARI ( BLKODU , BLGRVKODU , Grubu , ADI , Tipi , Baslama_Tarihi, Islem_Suresi , SILINDI ) VALUES( '1', 'Açılış', 'Açılış', 'Açılış', 'Açılış', '2019-08-29 17:02' , '0', '0' ) ;
Hatası Kodu
[FireDAC][Phys][ODBC][Microsoft][SQL Server Native Client 10.0][SQL Server]The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
Acaba Nerde Yanlış Yapıyorum
Yardımlarınız için allah razı olsun
Büyük ihtimal ile İşletim sistemi tarih formatından kaynaklanıyor. komutta tarih ayracı - işletim sistemi tarafında / ise hata oluşuyor.
Bu tip sorunları önlemek için @ mcuyan beyin önerdiği yöntemi kullanıyorum.
8-02-2019, Saat: 16:17 (Son Düzenleme: 28-02-2019, Saat: 16:20, Düzenleyen: mcuyan.)
Hocam Uygulamanızın Startında Bölgesel ayarlardaki ondalıklı ve binlik basamak ayıracını standarta oturtun..
Projenizi Sağ Tık->ViewSource
Unitlerin altına:
begin
Application.Initialize;
Application.UpdateFormatSettings := False;
SysUtils.FormatSettings.ThousandSeparator := '.';
SysUtils.FormatSettings.DecimalSeparator := ',';
SysUtils.FormatSettings.DateSeparator := '.';
SysUtils.FormatSettings.TimeSeparator := ':';
SysUtils.FormatSettings.ShortDateFormat := 'dd.mm.yyyy';
SysUtils.FormatSettings.ShortTimeFormat := 'hh:mm';
SysUtils.FormatSettings.LongTimeFormat := 'hh:mm';
SysUtils.FormatSettings.CurrencyString:='₺';
// Form create olayının üstünde yer almalı
Application.Title := 'Form Caption';
Application.CreateForm(Tdm1, dm1);
Application.CreateForm(TForm3, Form3);
Application.Run;
end.
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Yorumları: 230
Konuları: 9
Kayıt Tarihi: 07-07-2017
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 1.713 Programcı
30-08-2019, Saat: 16:29
(Son Düzenleme: 30-08-2019, Saat: 16:30, Düzenleyen: sabanakman.)
Aslında ayar SQL Server tarafına gerekiyor gibi. Connection ile bağlandıktan sonra veya sorguyu çalıştırmadan önce "set dateformat ymd" komutunu çalıştırmanız gerekiyor gibi. Zira sorguda kullanılan tarih biçimi yıl, ay, gün şeklinde.
Yorumları: 296
Konuları: 34
Kayıt Tarihi: 28-03-2017
Rep Puanı: 2.072 Programcı
(30-08-2019, Saat: 07:46)theSinan Adlı Kullanıcıdan Alıntı: S.a
Mssql VeriTabanına Kayıt Eklerken Hata Alıyorum
Daha önce başka bir soruya verdiğim cevabı inceleyebilirsiniz. Umarım yararı olur.
http://www.delphican.com/showthread.php?...50#pid5750
Yorumları: 277
Konuları: 25
Kayıt Tarihi: 10-08-2019
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 1.137 Programcı
30-08-2019, Saat: 23:21
(Son Düzenleme: 30-08-2019, Saat: 23:23, Düzenleyen: serdar.)
Ado ile benzer sorunu yasadim. Cozumu soyle idi.
TForm1.ADOConnection1AfterConnect(Sender: TObject);
begin
if Sender is TADOConnection then
TADOConnection(Sender).Execute('set dateformat dmy');
end;
Yorumları: 176
Konuları: 0
Kayıt Tarihi: 01-09-2016
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 552 Acemi
31-08-2019, Saat: 16:33
(Son Düzenleme: 31-08-2019, Saat: 16:34, Düzenleyen: FiRewaLL.)
INSERT Cümlesinde gönderilen tarihi
convert(VARCHAR, getdate(), 120)
şekilde yollayın sorun yaşamazsınız
convert(VARCHAR, '01.01.2019 11:11:10', 120)
Gibi
Eğer Saat yollamayacaksan
Tavsiyem
CONVERT(date,'01.01.2019',104)
Yorumları: 296
Konuları: 34
Kayıt Tarihi: 28-03-2017
Rep Puanı: 2.072 Programcı
(30-08-2019, Saat: 07:46)theSinan Adlı Kullanıcıdan Alıntı: S.a
Mssql VeriTabanına Kayıt Eklerken Hata Alıyorum
Tarih Kısmını MSSQL Tarih Formatına
TDateTime TARIH_SAAT;
FormatDateTime("yyyy-mm-dd hh:nn",TARIH_SAAT)
Çevirip Başına 'Tek Tırnak ve Sonuna Tek Tırnak Ekliyorum Şöyle Oluyor '2019-08-30 07:38:22'
Kayıt Ekleme Sorgu Hali
INSERT INTO GOREVDURUMLARI ( BLKODU , BLGRVKODU , Grubu , ADI , Tipi , Baslama_Tarihi, Islem_Suresi , SILINDI ) VALUES( '1', 'Açılış', 'Açılış', 'Açılış', 'Açılış', '2019-08-29 17:02' , '0', '0' ) ;
Hatası Kodu
[FireDAC][Phys][ODBC][Microsoft][SQL Server Native Client 10.0][SQL Server]The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
Acaba Nerde Yanlış Yapıyorum
Yardımlarınız için allah razı olsun
MS SQL Server'da dil veya bölge ayarı bağımlı olmayan güvenli tarih formatı 'YYYYMMDD' şeklindedir. 'YYYY-MM-DD' şeklindeki tarih formatı bölge ve dil ayarlarına bağımlıdır ve farklı dil ve bölge ayarlarında farklı davranış gösterir. Güvenli tarih ve saat formatı ise 'yyyy-mm-ddThh:mi:ss.mmm' .
Yorumları: 90
Konuları: 17
Kayıt Tarihi: 09-09-2017
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 123 Başlangıç
(01-09-2019, Saat: 14:45)csunguray Adlı Kullanıcıdan Alıntı: (30-08-2019, Saat: 07:46)theSinan Adlı Kullanıcıdan Alıntı: S.a
Mssql VeriTabanına Kayıt Eklerken Hata Alıyorum
Tarih Kısmını MSSQL Tarih Formatına
TDateTime TARIH_SAAT;
FormatDateTime("yyyy-mm-dd hh:nn",TARIH_SAAT)
Çevirip Başına 'Tek Tırnak ve Sonuna Tek Tırnak Ekliyorum Şöyle Oluyor '2019-08-30 07:38:22'
Kayıt Ekleme Sorgu Hali
INSERT INTO GOREVDURUMLARI ( BLKODU , BLGRVKODU , Grubu , ADI , Tipi , Baslama_Tarihi, Islem_Suresi , SILINDI ) VALUES( '1', 'Açılış', 'Açılış', 'Açılış', 'Açılış', '2019-08-29 17:02' , '0', '0' ) ;
Hatası Kodu
[FireDAC][Phys][ODBC][Microsoft][SQL Server Native Client 10.0][SQL Server]The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
Acaba Nerde Yanlış Yapıyorum
Yardımlarınız için allah razı olsun
MS SQL Server'da dil veya bölge ayarı bağımlı olmayan güvenli tarih formatı 'YYYYMMDD' şeklindedir. 'YYYY-MM-DD' şeklindeki tarih formatı bölge ve dil ayarlarına bağımlıdır ve farklı dil ve bölge ayarlarında farklı davranış gösterir. Güvenli tarih ve saat formatı ise 'yyyy-mm-ddThh:mi:ss.mmm' .
S.a csunguray tarih Formatı YYYY-MM-DD olduğundan Servis Uygulaması SYSTEM kullanıcısından Çalışıyor
SYSTEM bölge ayarları ingilizce imiş
Tarih Fotmatını
YYYYMMDD hh:nn:ss Yapınca Düzeldi
Allah razı olsun
|