2011-08-10 46 views
9

Tuyên bố miễn trừ trách nhiệm: Tôi hiểu câu hỏi rất cơ bản nhưng tôi không thể tìm thấy câu trả lời trong Google hoặc tại đây và không thể tự mình làm với cấu hình được đoán.Kết nối LINQPad với máy chủ SQL từ xa

Tôi muốn bắt đầu với LINQPad và tôi có một SQL Server 2005 được cài đặt trên máy khác nhau trong cùng một tên miền. Nhưng tôi không thể kết nối với máy chủ đó từ LINQPad.

Dưới đây là ảnh chụp màn hình: Fail to connect

nào để tôi đặt gì như là một chuỗi Server?

Rất cám ơn trước!

Cập nhật 1:SERVERNAME\MSSQLSERVER tạo sự khác biệt. Thay vì Lỗi

26 (Can not find server instance)

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

25 (Connection string is not correct)

Tôi đã thử 2 máy chủ SQL khác nhau: SQL 2005 trên máy chủ sản xuất và Sql Server 2008 R2 trên máy tính địa phương, tôi đã cố gắng cửa sổ xác thực và xác thực SQL . Và nó không có sự khác biệt. Nhưng tôi có thể kết nối với cả hai máy chủ (2005 và 2008) với MS SQL Server Management Studio với xác thực máy chủ Windows và SQL. Và nó không phải là vấn đề quyền SQL Server - Tôi đã thử SA người dùng để kết nối. Nó hoạt động với , nhưng không hoạt động với LINQPad.

Bạn có lời khuyên nào không? Có một thiết lập trên SQL Server tôi cần phải thay đổi?

Cập nhật 2: Tôi đã tìm ra giải pháp cho vấn đề. Vào trường Máy chủ, tôi phải đặt SERVERNAME\ mà không chỉ định SQLEXPRESS hoặc MSSQLSERVER.
Không phải rất trực quan = (

+0

Chúc mừng bạn đã tìm được giải pháp! Bạn nên thêm nó như là một câu trả lời (và đánh dấu nó như vậy) để làm cho nó rõ ràng cho những người trong tương lai. –

+0

Nếu SERVERNAME \ hoạt động, thì SERVERNAME (không có ký tự \) cũng sẽ hoạt động. – sgmoore

+0

@Ahmad Khi tôi đăng câu trả lời, tôi không được phép đăng câu trả lời cho câu hỏi của mình. Tôi chắc chắn sẽ làm ngay bây giờ. – trailmax

Trả lời

5

Tôi đã tìm ra giải pháp cho vấn đề. Vào trường Máy chủ, tôi phải đặt "SERVERNAME \" mà không có bất kỳ SQLEXPRESS hoặc MSSQLSERVER nào. Cũng như được chỉ ra bởi @sgmoore, tôi có thể chỉ cần nhập "LOCALHOST" hoặc "SERVERNAME" và nó được kết nối. Rõ ràng đây là tính năng/lỗi SQL Server, không có gì để làm với LINQPad.

UPD Bạn cũng có thể sử dụng "." để biểu thị "localhost" enter image description here

+1

Tuyệt vời! Nếu có bất kỳ sự thoải mái nào, tôi có một vấn đề rất giống nhau khi cố gắng kết nối với SQL Server từ Mathematica, và nó đã leo thang tối đa tại Wolfram Research để hiểu nó. Vấn đề cơ bản là có rất nhiều cách để ghép nối với nhau một chuỗi kết nối từ các chất nền được gõ vào các trường kiểu hộp thoại hoặc các trường khác. Có hoặc không có dấu gạch chéo ngược, tăng gấp đôi dấu gạch chéo ngược, ký tự trích dẫn riêng biệt và tất cả phần còn lại. Vui vì bạn đã có nó! –

2

Bạn phải biết tên máy tính bạn muốn và tên của phiên bản SQL Server. Ví dụ, tôi có máy tính có tên REB602 và, để sử dụng SQLEXPRESS trên đó (Ví dụ SQL-Server được cài đặt sẵn với nhiều phiên bản của Visual Studio), sau đó chuỗi tôi nhập là REB602 \ SQLEXPRESS hoặc. \ SQLEXPRESS. Định dạng cơ bản là < tên máy tính > \ < instance-name >

Tôi nghĩ tên cá thể mặc định cho sản phẩm SQL Server đầy đủ là MSSQLSERVER, vì vậy nếu bạn không biết tên của cá thể trên máy tính mục tiêu, bạn có thể thử điều đó

LƯU Ý: có thể mất vài lần thử kết nối, vì hết thời gian chờ. Tôi không biết nếu LinqPad cho phép bạn thay đổi thời gian chờ - Tôi đã không nhìn thấy một cách. Khi thử nghiệm câu trả lời của tôi cho bạn trên máy tính REB602 sáng nay, tôi đã làm "Kiểm tra kết nối" ở dưới cùng của hộp thoại LinqPad, đã thành công, nhưng kết nối vẫn hết thời gian chờ. Tôi đã phải đưa lên SSMS (SQL-Server Management Studio, IDE cho SQL Server) để "khởi động" ví dụ của tôi về SQLEXPRESS. Sau đó, LinqPad đã làm việc như một giấc mơ. Đừng từ bỏ lần thử đầu tiên :)

+0

A! Tôi đã thiếu MS từ MSSQLSERVER. Tuy nhiên, bây giờ tôi nhận được lỗi khác nhau: lỗi xác thực. Nhưng đây là vấn đề khác. Tôi đang cố gắng để kết nối với một cơ sở dữ liệu dev trên máy chủ sản xuất, do đó, nó nên được lên đến tốc độ đã -) .. Cảm ơn! – trailmax

Các vấn đề liên quan