SORU
17 Mart 2010, ÇARŞAMBA


Eklemek birden fazla (SQL Server 2005)kullanarak TAKIN değerleri

SQL Server 2005'te, bir tabloya birden çok alan eklemek mümkün değilim neden olduğunu anlamaya çalışıyorum. Ekler bir kayıt bir sorudur efendim, gayet iyi çalışıyor:

INSERT INTO [MyDB].[dbo].[MyTable]
           ([FieldID]
           ,[Description])
     VALUES
           (1000,N'test')

Ancak, birden fazla değer belirtir bir sorudur efendim, başarısız:

INSERT INTO [MyDB].[dbo].[MyTable]
           ([FieldID]
           ,[Description])
     VALUES
           (1000,N'test'),(1001,N'test2')

Bu mesajı alıyorum:

Msg 102, Level 15, State 1, Line 5
Incorrect syntax near ','.

Ben baktım yardım için EKLE SQL Server Management Studio, bir örnek gösterdi kullanma "Değerler" sözdizimi kullandım (sahip grupların değerleri parantez içinde ve virgülle ayırarak). Belgeleri ben SQL bulundu yardım Server Management Studio SQL Server 2008, bu Ekle çalışmıyor bu yüzden belki de benziyor. Her iki şekilde de, bu bir işe yaramaz neden olduğunu çözemedim.

CEVAP
17 Mart 2010, ÇARŞAMBA


Kullandığınız sözdizimi yeni SQL Server 2008

INSERT INTO [MyDB].[dbo].[MyTable]
       ([FieldID]
       ,[Description])
 VALUES
       (1000,N'test'),(1001,N'test2')

SQL Sunucu INSERT birden çok deyimleri kullanmak zorunda olacak 2005,:

INSERT INTO [MyDB].[dbo].[MyTable]
       ([FieldID]
       ,[Description])
 VALUES
       (1000,N'test')

INSERT INTO [MyDB].[dbo].[MyTable]
       ([FieldID]
       ,[Description])
 VALUES
       (1001,N'test2')

Bir diğer seçenek UNION ALL kullanmak için:

INSERT INTO [MyDB].[dbo].[MyTable]
       ([FieldID]
       ,[Description])
SELECT 1000, N'test' UNION ALL
SELECT 1001, N'test2'

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bobono1baby

    bobono1baby

    14 AĞUSTOS 2011
  • FUNKER530 - Veteran Community & Combat Footage

    FUNKER530 -

    25 Ocak 2007
  • sonia989

    sonia989

    26 EKİM 2006