2009-09-20 8 views
6

Cố gắng này trong chuỗi kết nối nhưLàm thế nào để đính kèm tập tin MDF để .SQLEXPRESS

connectionString="Server=.\SQLEXPRESS; 
    AttachDbFilename=E:\Database\dnn49.mdf;Database=dnn49; 
    Trusted_Connection=Yes;" 

nhưng tôi nhận được một lỗi

Không thể mở tập tin vật lý "E: \ Database \ dnn49 .mdf ". Lỗi hệ điều hành 5: "5 (Quyền truy cập là bị từ chối.)". Không thể đính kèm tệp 'E: \ Database \ dnn49.mdf' làm cơ sở dữ liệu 'dnn49'.

Điều gì mang lại?

+0

Bạn đang truy cập này thông qua một ứng dụng web? –

+0

Có, tôi đã cấp cho Dịch vụ mạng toàn quyền truy cập và bây giờ có vẻ như hoạt động – epitka

+0

Tôi sẽ viết câu trả lời này để người khác có thể hưởng lợi. Bạn có thể tự cung cấp tín dụng để có câu trả lời đúng trong quy trình. –

Trả lời

4

Bạn phải kiểm tra tài khoản Dịch vụ SQL Server có quyền sửa đổi đối với tệp vật lý "dnn49.mdf" và sửa đổi quyền cũng trên thư mục chứa tệp.

+0

Chắc chắn điều này thực sự phức tạp triển khai với các tập tin cá thể người dùng? – ProfK

0

Nếu bạn vẫn không thể đính kèm cơ sở dữ liệu sau khi cấp dịch vụ mạng (hoặc tài khoản dịch vụ khác) sửa đổi quyền cho thư mục, cũng thêm ID người dùng của riêng bạn (đính kèm) vào thư mục với quyền sửa đổi (ngay cả khi thành viên của quản trị viên và quản trị viên có toàn quyền kiểm soát trên thư mục). Rõ ràng, đây là lỗi trong Windows 7.

Bạn có thể xóa ID người dùng của mình khỏi thư mục sau khi đính kèm thành công (các) cơ sở dữ liệu.

8

Nếu bạn đang đính kèm từ SQL Server Management Studio, nó cũng hoạt động để chạy SSMS với tư cách quản trị viên. Điều này sau đó có thể tận dụng thực tế là nhóm quản trị viên có toàn quyền kiểm soát tệp. Một trường hợp hiếm gặp hơn nữa là bạn sẽ nhận được lỗi Truy cập bị từ chối này vì cơ sở dữ liệu đã được đính kèm. Điều này có lẽ rõ ràng hơn trừ khi bạn có nhiều phiên bản SQL Server đang chạy và bạn đã gắn nó vào một cá thể khác có thể.

0

Một đề xuất khác là tắt UAC (bạn có thể tắt tạm thời để xác minh xem đó có phải là vấn đề về quyền) hay không.

+0

Xin trợ giúp nếu bạn cung cấp chi tiết. – Shimmy

3

tôi không thể nói cho dù bạn người có những giải pháp cho vấn đề hay không, nhưng tôi đề nghị một đơn giản ở đây ...

copy MDF và file LDF vào thư mục cài đặt SQLServer của bạn, bạn có thể đặt nó trong thư mục sao lưu của thư mục. sau đó thử nó

tôi đã sử dụng nó nhiều lần ...

Good Luck

+0

lý do tại sao va chạm một câu hỏi gần 3 tuổi với câu trả lời được chấp nhận từ 3 năm trước ... – Seph