Kullanamazsınız yükseltilen Access 2002'de bir Access projesinde Sorgu Ekle

Makale çevirileri Makale çevirileri
Makale numarası: 294923 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Gelişmiş: Uzman kodlama, birlikte çalışabilirlik ve çok kullanıcılı becerileri gerektirir.

Bu makalede, yalnızca bir Microsoft Access projesine (.adp) uygulanır.

Bu makalenin Microsoft Access 2000 sürümü için bkz: 229681.
Hepsini aç | Hepsini kapa

Bu Sayfada

Belirtiler

Bir yükseltilen çalıştırmayı denediğinizde, Microsoft Access projesinde sorgusu, aşağıdaki hata iletisini alabilirsiniz:
Identıty_ınsert KAPALı olarak ayarlandığında, kimlik sütunu için açık değer ' Tablo adı ' tablosunda eklenemiyor.

Neden

(SQL Server 2000 Desktop Engine'i dahil) yeni bir SQL Server veritabanı oluşturduğunuzda, ıdentıty_ınsert seçeneği KAPALı olarak ayarlanır.

Alan yükselttikten OtomatikSayı veri alan içeren bir Microsoft Access tablosuna yazarsanız, SQL Server'da IDENTITY sütunu olarak oluşturulur. OtomatikSayı veri türünün farklı olarak, edemiyor doğrudan IDENTITY sütunu düzenlemek ve bu tablo ıdentıty_ınsert seçeneği KAPALı olarak ayarlanmışken, bir IDENTITY sütununa veri açıkça ekleyin. Eklemek veya bir IDENTITY sütunu verileri güncelleştirmek için ıdentıty_ınsert seçeneği AÇıK olarak ayarlamanız gerekir.

Çözüm

SET ıdentıty_ınsert deyimi, ıdentıty_ınsert seçeneği belirlemek için kullanabilirsiniz. SET ıdentıty_ınsert, her zaman bir tabloya başvuran ve, bunu önce bir IDENTITY sütununa veri ekler veya değiştirir GÜNCELLEŞTIR veya INSERT deyimi koymanız gerekir. Aşağıdaki örnek, ıdentıty_ınsert NewEmployees tablo için ayarlar.
   SET IDENTITY_INSERT NewEmployees ON
				

Daha fazla bilgi

Davranışı Yeniden Oluşturma Adımları

  1. Northwind.mdb örnek veritabanını açın.
  2. Veritabanı penceresinde, Çalışanlar tablosunu tıklatın ve sonra da Düzen menüsünden Kopyala ' yı tıklatın.
  3. Düzen menüsünden Yapıştır ' ı tıklatın. Tabloyu farklı Yapıştır iletişim kutusuna NewEmployeesTablo adı</a0> kutusuna yazın. Tamam ' ı tıklatın.
  4. Tasarım görünümünde yeni bir sorgu oluşturun ve sonra herhangi bir tablo veya sorgu eklemeden <a0>Tablo Göster</a0> iletişim kutusunu kapatın.
  5. Görünüm menüsünden SQL görüntüle. tıklatın
  6. Aşağıdaki INSERT INTO deyimini SQL penceresine yazın. Bu ifade, bir ekleme sorgusu oluşturur:
       INSERT INTO 
              NewEmployees (EmployeeID, LastName, FirstName, Title,
              TitleOfCourtesy, BirthDate, HireDate, Address, City, Region,
              PostalCode, Country, HomePhone, Extension, Photo, Notes,
              ReportsTo)
       SELECT 
              Employees.EmployeeID, Employees.LastName, Employees.FirstName,
              Employees.Title, Employees.TitleOfCourtesy, Employees.BirthDate,
              Employees.HireDate, Employees.Address, Employees.City,
              Employees.Region, Employees.PostalCode, Employees.Country,
              Employees.HomePhone, Employees.Extension, Employees.Photo,
              Employees.Notes, Employees.ReportsTo
       FROM 
              Employees;
    					
  7. Sorguyu qryAppend kaydetmek ve sorguyu kapatın.
  8. Araçlar menüsünden Veritabanı hizmet programları için işaretleyin ve sonra Yükseltme Sihirbazı ' nı tıklatın.
  9. Yükseltme Sihirbazı'ndaki adımları tamamlamak ve aşağıda belirtildiği gibi varsayılan seçimleri dışında kabul:
    Yeni veritabanı oluştur: Evet
    Hangi tabloları SQL Server'a vermek istiyorsunuz: tüm tabloları verme
    Tablolara zaman damgası alanları ekleme: Hayır, hiçbir zaman
    Yeni bir Access istemci/sunucu uygulaması oluştur: Evet
  10. Yükseltme Sihirbazı'nı tamamladıktan sonra yükseltme raporu kapatın.
  11. Deneyin qryAppend saklı yordamı çalıştırmak ve hata iletisini not edin.
  12. SQL, aşağıdaki satırı IDENTITY INSERT, AÇıK olarak ayarlamak için <a0></a0>, doğrudan sonra anahtar AS qryAppend saklı yordama ekleyin:
       SET IDENTITY_INSERT NewEmployees ON
    						
    Bitirdiğiniz zaman, aşağıdaki metni, saklı yordam benzer:
       ALTER PROCEDURE qryAppend
       AS
       SET IDENTITY_INSERT NewEmployees ON
       INSERT INTO 
              NewEmployees (EmployeeID, LastName, FirstName, Title,
              TitleOfCourtesy, BirthDate, HireDate, Address, City, Region,
              PostalCode, Country, HomePhone, Extension, Photo, Notes,
              ReportsTo)
       SELECT 
              Employees.EmployeeID, Employees.LastName, Employees.FirstName,
              Employees.Title, Employees.TitleOfCourtesy, Employees.BirthDate,
              Employees.HireDate, Employees.Address, Employees.City, 
              Employees.Region, Employees.PostalCode, Employees.Country, 
              Employees.HomePhone, Employees.Extension, Employees.Photo, 
              Employees.Notes, Employees.ReportsTo
       FROM 
              Employees
    					
  13. Değiştirilmiş saklı yordamın kaydedin ve çalıştırın. Başarılı unutmayın.

Referanslar

IDENTITY INSERT hakkında daha fazla bilgi için SQL Server Books Online'da için başvurun. SQL Server Books Online'da karşıdan yüklemek için aşağıdaki Microsoft Web sitesini ziyaret edin:
http://technet.microsoft.com/en-us/sqlserver/bb331756.aspx

Özellikler

Makale numarası: 294923 - Last Review: 30 Ocak 2014 Perşembe - Gözden geçirme: 3.3
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Access 2002 Standard Edition
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbclientserver kberrmsg kbprb KB294923 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:294923

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com