SQL server'da aşağıdaki sorguyu kullanarak bir tablodan diğerine değer eklemeye çalışıyorum:
delete from tblTable1
insert into tblTable1 select * from tblTable1_Link
Aşağıdaki hatayı alıyorum:
Sütun adı veya sağlanan değer sayısı tablo tanımıyla eşleşmiyor.
Her iki tablonun da aynı yapıya, aynı sütun adlarına ve aynı veri türlerine sahip olduğundan eminim.
Lütfen yardım edin!
Aynı yapıya sahip değiller. Farklı olduklarını garanti edebilirim
Çoktan yarattığını biliyorum... Veritabanında zaten 'tbltable1' adında bir nesne var
İsteyebileceğiniz şey şudur (bu aynı zamanda diğer sorununuzu da çözer):
Drop table tblTable1
select * into tblTable1 from tblTable1_Link
eklemeler için sütun adlarını belirtmek her zaman daha iyidir, bkz.
DECLARE @Table TABLE(
Val1 VARCHAR(MAX)
)
INSERT INTO @Table SELECT '1'
iyi çalışıyor, tablo tanımını değiştirmek hataya neden oluyor
DECLARE @Table TABLE(
Val1 VARCHAR(MAX),
Val2 VARCHAR(MAX)
)
INSERT INTO @Table SELECT '1'
Msg 213, Seviye 16, Durum 1, Satır 6 Ekleme Hatası: Sütun adı veya sayısı sağlanan değerler tablo ile eşleşmiyor tanım.
Ancak yukarıdakileri şu şekilde değiştirmek
DECLARE @Table TABLE(
Val1 VARCHAR(MAX),
Val2 VARCHAR(MAX)
)
INSERT INTO @Table (Val1) SELECT '1'
çalışıyor. Belirtilen sütunlarla ilgili daha spesifik olmanız gerekir
yapıları sağlayın ve bir göz atalım
sütun öneki, sorguda kullanılan bir tablo adı veya diğer ad ile eşleşmiyor.
Ben de bu hatayı çözmek için çalışıyordum
Nw neden geldiğini buldum sadece sorguda küçük değişiklikler yapmam gerekiyor
http://sqlerrormessages.blogspot.com/2009/08/sql-server-error-messages-msg-107.html