Ağ Üzerinden Toplu Ekleme


13

Birisi bana bu konuda yardımcı olabilir mi?

BULK INSERT DATABESE01.dbo.TABLE01
FROM '\\COMPUTER01\FOLDER01\TextFile.txt'
WITH
(
    FIELDTERMINATOR = ' ',
    rowterminator = '\n',
    tablock
)

Hata, açılamadı gösterir:

'\ SERVERNAME \ FOLDERNAME \ textFile.txt' dosyası açılamadığı için toplu eklenemedi. İşletim sistemi hata kodu 5 (Erişim reddedildi.)

Yol, ağdaki başka bir bilgisayarda.


8
Does hesabı SQL Server erişim izni verilmiş olduğundan altında çalışmakta olduğunu '\\COMPUTER01\FOLDER01\TextFile.txt'? Hesap genellikle farklı olacağını unutmayın sizin hesabınızla.
Damien_The_Unbeliever

3
Aldığınız hatayı da ekleyebilir misiniz?
ypercubeᵀᴹ

@Damien_The_Unbeliever'e ek olarak: "Paylaşılan bir veri dosyası belirtmek için, \\ Sunucuadı \ PaylaşımAdı \ Yol \ Dosyaadı genel biçimini alan evrensel adlandırma kuralı (UNC) adını kullanın.
JoseTeixeira

@ypercube - '\\ SERVERNAME \ FOLDERNAME \ textFile.txt' dosyası açılamadığı için toplu eklenemedi. İşletim sistemi hata kodu 5 (Erişim reddedildi.). teşekkür ederim efendim
Jonas Ivy V. Imperial

Aynı etki alanı ve etki alanları (İşletim sistemi hata kodu 5 (Erişim reddedildi.)) Kullanarak aynı sorun var. İlginç bir şekilde, dosyanın var olup olmadığını test etmek için XP_CMDSHELL kullanırsam veya dosyayı taşıyabilirim, ancak toplu ekleme atılır erişim reddedildi. Sql service hesabı ve windows hesabımın klasör izinleri var.

Yanıtlar:


14

Bir inanç sıçraması yapacağım ve SQL Kimlik Doğrulaması'nı kullanarak SQL Server'a bağlanacağınızı varsayalım. Böyle bir durumda Kerberos çift atlama özelliğiniz vardır: bir atlama SQL Server'a bağlanan istemci uygulamanızdır, ikinci atlama ise uzaktan kumandaya bağlanan SQL Server'dır \\COMPUTER01. Böyle bir ikili sıçrama Kısıtlı Delegasyonun kısıtlamalarına girer ve Anonim Giriş ve dolayısıyla Erişim Reddedilir gibi paylaşıma erişirsiniz.

Sorunu gidermek için SQL Server hizmet hesabı için kısıtlı temsilci seçmeyi etkinleştirmeniz gerekir. Bu blog Nasıl Yapılır: Kısıtlı Temsilci ile SQL Server Toplu Ekleme (Erişim Reddedildi) bunun nasıl yapılacağına dair bir örnek var ve gerçekten 'kısıtlamasız yetkilendirmeyi etkinleştirme' adımının kısıtlamasız temsilci olduğu için bir yazım hatası olmasını umuyorum. sadece sade kötülük.

Silahı atladığımda ve SQL Kimlik Doğrulaması'nı kullanarak SQL Server'da oturum açmanız durumunda, SQL girişiniz için bir kimlik bilgisi oluşturmanız ve bunu ağ kaynaklarına erişmek için kullanmanız gerekir. Bkz CREATE CREDENTIAL.


1

SQL Server dosyayı açmaya çalıştı, SQL Server'ın çalıştığı hesabın dosyayı açma izni olmadığından dosya sunucusu "Erişim reddedildi" dedi. Dosyadaki güvenlik ayarlarını uygun şekilde değiştirin, çalışacaktır.


1

Komut dosyasını bir SQL oturumu altında (bulkadmin izniyle) çalıştırır ve ağ klasöründeki iznin SQL Service Hesabı veya SQL Server Agent hesabına karşı kimlik doğrulaması yapmasına izin veririm.


-2

Bu mesajı her aldığımda benim için neyin işe yaradığını anlatacağım. csv dosyasını bir not defterinde bir metin olarak açın ve dosyadaki tüm boşluk satırlarını silin, excel dosyasında bu boş satırları göremiyorum. Genellikle boş olmasına rağmen görünen son satır


Aynı hatanın olduğundan emin misiniz?
dezso

Bunun Erişim Engellendi hatalarıyla ilgisi yoktur. Bu yalnızca dosya biçimi hatalarını düzeltir.
Julien Vavasseur
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.