Neler Yeni

MS SQL e Bir Excel Dosyası Import Ederken Excelde ki Veri Türleri Doğru Gelmiyor

OrkunJJ

80+ Silver
Katılım
18 Ocak 2021
Mesajlar
3,622
Dahası  
Reaksiyon skoru
1,743
Yaş
21
İsim
Orkun
Merhaba, arkadaşlar acil yardım lazım halletmem gerekiyor bu sorunu.
MS SQL e Import Export Wizard ile Excel dosyası import etmem gerekiyor.
Dosyayı import ederken veri türlerine baktığımda TIME olarak gelmesi gereken yerler NVARCHAR veri türünde geliyor.
Excel tablosu içerisinde hücre biçimi olarak Saat seçili. Ama neden MS SQL e import ederken yanlış algılıyor bilmiyorum.

Başka çözüm yolları denedim ama hiçbiri olmadı. Veri türü değiştirmek işe yaramıyor. NVARCHAR dan TIME a dönüştürmeye çalıştığımda dönüşüm hatası veriyor.
Bu sorunun çözümü konusunda anlayan biri yardımcı olursa çok sevinirim.
 

dostveviski

80+ Bronze
Katılım
6 Nisan 2020
Mesajlar
737
Exceldeki saat formatın mssqldeki TIME formatına uygun mu yazılmış halde hocam?

edit:
1691482831995.png
 

OrkunJJ

80+ Silver
Katılım
18 Ocak 2021
Mesajlar
3,622
Dahası  
Reaksiyon skoru
1,743
Yaş
21
İsim
Orkun
  • Konu Sahibi Konu Sahibi
  • #3

dostveviski

80+ Bronze
Katılım
6 Nisan 2020
Mesajlar
737
Alıntıyı görüntüle
Excel den şu şekilde biçimlendiriyordum veri türü için. Yanlış mı yapıyorum acaba?
Format olarak hh:mm:ss diye biliyorum.
hocam siz saat mi aktarmak istiyorsunuz yoksa tarih mi? Tüm format uyumluluklarına rağmen yine de olmuyorsa sqlde veri türü değiştirme komutu vardı onu uygulamayı deneyebilirsin. Halen daha olmuyorsa nvarchar da iyidir büyük bir proje değilse sorun çıkarmaz bence. Sonuçta yazılımcıılığın bir numaralı kuralı değil midir çalışıyorsa dokunma :D
Mesaj otomatik birleştirildi:

Ekstra olarak hiç excelden Mssql veri aktarmadım ama önceden tabloyu kendiniz oluştursanız veri türünü TIME yapsanız olmuyor mu?:/
 

OrkunJJ

80+ Silver
Katılım
18 Ocak 2021
Mesajlar
3,622
Dahası  
Reaksiyon skoru
1,743
Yaş
21
İsim
Orkun
  • Konu Sahibi Konu Sahibi
  • #5
hocam siz saat mi aktarmak istiyorsunuz yoksa tarih mi? Tüm format uyumluluklarına rağmen yine de olmuyorsa sqlde veri türü değiştirme komutu vardı onu uygulamayı deneyebilirsin. Halen daha olmuyorsa nvarchar da iyidir büyük bir proje değilse sorun çıkarmaz bence. Sonuçta yazılımcıılığın bir numaralı kuralı değil midir çalışıyorsa dokunma :D
Mesaj otomatik birleştirildi:

Ekstra olarak hiç excelden Mssql veri aktarmadım ama önceden tabloyu kendiniz oluştursanız veri türünü TIME yapsanız olmuyor mu?:/
Hocam malesef olmuyor. İnatla veri türünü NVARCHAR olarak yazıyor. Veri türü değiştirme komutları hiçbir işe yaramıyor. NVARCHAR dan TIME türüne dönüşüm de convarsion hatası veriyor. Bir türlü şu sorunu çözemedim.

Çalışsa sorun yok da NVARCHAR türünde yapmak istediğim işi yapamıyorum.
DATEDIFF fonksiyonları vs. kullanıp zaman hesaplamaları vs. yapmam lazım.
 

dostveviski

80+ Bronze
Katılım
6 Nisan 2020
Mesajlar
737
Hocam malesef olmuyor. İnatla veri türünü NVARCHAR olarak yazıyor. Veri türü değiştirme komutları hiçbir işe yaramıyor. NVARCHAR dan TIME türüne dönüşüm de convarsion hatası veriyor. Bir türlü şu sorunu çözemedim.

Çalışsa sorun yok da NVARCHAR türünde yapmak istediğim işi yapamıyorum.
DATEDIFF fonksiyonları vs. kullanıp zaman hesaplamaları vs. yapmam lazım.
Hocam elindeki veri setinide görmediğim için bir şey diyemeyeceğim. Ama convertte hata verdiyse saat formatında bir sorun var gibi geldi bana
Mesaj otomatik birleştirildi:

Alıntıyı görüntüle
Excel den şu şekilde biçimlendiriyordum veri türü için. Yanlış mı yapıyorum acaba?
Format olarak hh:mm:ss diye biliyorum.
Büyük ihtimal bir şey farketmeyecek ama * olanı değilde 3. satırdakini kullanmayı denesene
 

OrkunJJ

80+ Silver
Katılım
18 Ocak 2021
Mesajlar
3,622
Dahası  
Reaksiyon skoru
1,743
Yaş
21
İsim
Orkun
  • Konu Sahibi Konu Sahibi
  • #7
Hocam elindeki veri setinide görmediğim için bir şey diyemeyeceğim. Ama convertte hata verdiyse saat formatında bir sorun var gibi geldi bana
Mesaj otomatik birleştirildi:


Büyük ihtimal bir şey farketmeyecek ama * olanı değilde 3. satırdakini kullanmayı denesene
Aynı hocam değişen bir şey yok malesef.
Mesaj otomatik birleştirildi:

1691487108133.png

Şu formatta saat verileri. Aynı şekilde SQL e aktardığımda üzerinden işlemler yapmam gerekiyor.
Şu formatı NVARCHAR olarak algılıyor neden böyle yapıyor anlamış değilim. Kaç gündür bununla uğraşıyorum.
Direk .xlsx formatında ve .csv olarak flat file formatında import etmeyi denedim ama değişen bir şey olmuyor aynı.
 

dostveviski

80+ Bronze
Katılım
6 Nisan 2020
Mesajlar
737
Aynı hocam değişen bir şey yok malesef.
Mesaj otomatik birleştirildi:

Alıntıyı görüntüle
Şu formatta saat verileri. Aynı şekilde SQL e aktardığımda üzerinden işlemler yapmam gerekiyor.
Şu formatı NVARCHAR olarak algılıyor neden böyle yapıyor anlamış değilim. Kaç gündür bununla uğraşıyorum.
Direk .xlsx formatında ve .csv olarak flat file formatında import etmeyi denedim ama değişen bir şey olmuyor aynı.
hocam merakımdan kendim denedim ve başarılı sonuç aldım. ":" yerine "." ile dener misiniz?
edit: siz saati aktarmaya çalışıyormuşsunuz ben tarihi denedim :D
1691491303017.png

1691491310524.png

Mesaj otomatik birleştirildi:

Saati de denedim hocam başarıyla çalışıyor
1691491858654.png
 
Son düzenleme:

OrkunJJ

80+ Silver
Katılım
18 Ocak 2021
Mesajlar
3,622
Dahası  
Reaksiyon skoru
1,743
Yaş
21
İsim
Orkun
  • Konu Sahibi Konu Sahibi
  • #9
hocam merakımdan kendim denedim ve başarılı sonuç aldım. ":" yerine "." ile dener misiniz?
edit: siz saati aktarmaya çalışıyormuşsunuz ben tarihi denedim :D
Alıntıyı görüntüle
Alıntıyı görüntüle
Mesaj otomatik birleştirildi:

Saati de denedim hocam başarıyla çalışıyor
Alıntıyı görüntüle
datetime olarak aktarmışsınız anladığım kadarıyla, ben time a çekmeye çalışıyordum ama datetime olarak hiç denemedim bir deneyeyim

bir de saat kısmını excel de hangi veri türünü seçtin?
 

dostveviski

80+ Bronze
Katılım
6 Nisan 2020
Mesajlar
737
datetime olarak aktarmışsınız anladığım kadarıyla, ben time a çekmeye çalışıyordum ama datetime olarak hiç denemedim bir deneyeyim

bir de saat kısmını excel de hangi veri türünü seçtin?
direkt task/import ile aktardım hocam tabloyu kendi oluşturdu. Veri türünü ben seçmedim mssql kendi seçmiş. Excel' de saat veri türüm 'saat'ti.
 

OrkunJJ

80+ Silver
Katılım
18 Ocak 2021
Mesajlar
3,622
Dahası  
Reaksiyon skoru
1,743
Yaş
21
İsim
Orkun
direkt task/import ile aktardım hocam tabloyu kendi oluşturdu. Veri türünü ben seçmedim mssql kendi seçmiş. Excel' de saat veri türüm 'saat'ti.
Bende de saat olarak seçili, task import yapıyorum senin yaptığın şekilde, başka excel dosyalarında problem yok bir bunu aktarırken bu sorunu yaşıyorum. İçerisinde ki verileri yeni excel dosyası oluşturup onun içine koyarak bir de öyle de denedim onda da aynı oluyor.
 

dostveviski

80+ Bronze
Katılım
6 Nisan 2020
Mesajlar
737
Bende de saat olarak seçili, task import yapıyorum senin yaptığın şekilde, başka excel dosyalarında problem yok bir bunu aktarırken bu sorunu yaşıyorum. İçerisinde ki verileri yeni excel dosyası oluşturup onun içine koyarak bir de öyle de denedim onda da aynı oluyor.
mssql' de excel sürümünü 97-2003 seçiyorum ben. Bunlara rağmen olmuyorsa içindeki verilerin birinde bozulma var büyük ihtimal belki fazladan bir boşluk veya ":" yerine ";" gibi çünkü diğerlerinde sorun yaşamıyorum diyorsun
 

OrkunJJ

80+ Silver
Katılım
18 Ocak 2021
Mesajlar
3,622
Dahası  
Reaksiyon skoru
1,743
Yaş
21
İsim
Orkun
mssql' de excel sürümünü 97-2003 seçiyorum ben. Bunlara rağmen olmuyorsa içindeki verilerin birinde bozulma var büyük ihtimal belki fazladan bir boşluk veya ":" yerine ";" gibi çünkü diğerlerinde sorun yaşamıyorum diyorsun
2007-2010 seçiyor bende otomatik. Başka bir sürümü seçince hata veriyor.
 
Top Bottom