2013-11-22 23 views
19

Hi guys Tôi có chuỗi sau kết nối (nhận được từ một thuộc tính của máy chủ sql):"Thời gian chờ kết nối" trong chuỗi kết nối máy chủ sql là gì?

Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\myUser\Desktop\adoBanche\Banche\bin\Debug\banche.mdf;Integrated Security=True;Connect Timeout=30 

Tôi không hiểu những gì có nghĩa là Timeout=30. Ai đó có thể giải thích nghĩa là gì?

+4

Nếu nó không kết nối trong 30 giây nó tự động thoát cố gắng. – Mihai

Trả lời

33

Đó là thời gian chờ để tạo kết nối, KHÔNG Hết thời gian chờ cho các lệnh được thực thi qua kết nối đó.

Xem ví dụ http://www.connectionstrings.com/all-sql-server-connection-string-keywords/ (lưu ý rằng tài sản là "Connect Timeout" (hoặc "Connection Timeout"), chứ không phải chỉ là "Timeout")

+8

Từ liên kết tôi có thể suy ra rằng ** KHÔNG thể đặt thời gian chờ lệnh từ chuỗi kết nối **. Thay vào đó, chúng tôi chỉ có thể đặt thời gian chờ kết nối. – RBT

1

Thời gian tối đa giữa yêu cầu kết nối và lỗi hết thời gian chờ. Khi máy khách cố gắng tạo kết nối, nếu đạt đến giới hạn chờ thời gian chờ, nó sẽ ngừng cố gắng và gây ra lỗi.

1

Gets thời gian để chờ đợi trong khi cố gắng thiết lập một kết nối trước khi chấm dứt sự cố và tạo ra lỗi. (MSDN, SqlConnection.ConnectionTimeout Property, 2013)

5

Connect Timeout=30 phương tiện, trong máy chủ sql 30second nên thiết lập các connection.other khôn ngoan yêu cầu kết nối hiện tại sẽ được cancelled.It được sử dụng để tránh nỗ lực kết nối để chờ đợi vô thời hạn.

3

Thời gian chờ kết nối = 30 có nghĩa là máy chủ cơ sở dữ liệu có 30 giây để thiết lập kết nối.

Connection Timeout xác định thời hạn (tính bằng giây), trong đó kết nối đến máy chủ xác định phải được thực hiện, nếu không một ngoại lệ được ném tức Nó xác định bao lâu bạn sẽ cho phép chương trình của bạn được tổ chức lên trong khi nó thiết lập kết nối cơ sở dữ liệu.

DataSource=server; 
InitialCatalog=database; 
UserId=username; 
Password=password; 
Connection Timeout=30 

SqlConnection.ConnectionTimeout. chỉ định số giây dịch vụ SQL Server phải đáp ứng với nỗ lực kết nối. Điều này luôn được thiết lập như là một phần của chuỗi kết nối.

Ghi chú:

  • Giá trị được thể hiện trong vài giây, không mili giây.

  • Giá trị mặc định là 30 giây.

  • Giá trị 0 có nghĩa là chờ vô thời hạn và không bao giờ hết giờ.

Ngoài ra, SqlCommand.CommandTimeout chỉ định giá trị thời gian chờ của truy vấn cụ thể chạy trên SQL Server, tuy nhiên điều này được đặt thông qua cài đặt/đối tượng SqlConnection (tùy thuộc vào ngôn ngữ lập trình của bạn) và không có trong chuỗi kết nối. được giữ trong khi lệnh được chạy.

0

Bởi thời gian chờ kết nối mặc định là 240 nhưng nếu bạn đang faceing vấn đề của thời gian kết nối ra sau đó bạn có thể tăng tối đa "300" "Connection Timeout = 300"

+0

Giá trị mặc định là 30 giây – Escobar5

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