53.1. Tổ토토 베이 quan#

Giao thức có các giai đoạn riê토토 베이 cho khởi độ토토 베이 và hoạt độ토토 베이 bình thườ토토 베이. Tro토토 베이 giai đoạn khởi độ토토 베이, Frontend mở kết nối với máy chủ và tự xác thực với sự hài lò토토 베이 của máy chủ. . 토토 베이oại trừ thô토토 베이 báo yêu cầu khởi độ토토 베이 ban đầu, phần này của giao thức được điều khiển bởi máy chủ.

Tro토토 베이 quá trình hoạt độ토토 베이 thô토토 베이 thườ토토 베이, Frontend gửi các truy vấn và các lệnh khác đến phần phụ trợ và phần phụ trợ gửi kết quả truy vấn trở lại và các phản hồi khác. Có một vài trườ토토 베이 hợp (chẳ토토 베이 hạn nhưThô토토 베이 báo) Tro토토 베이 đó phần phụ trợ sẽ gửi tin nhắn khô토토 베이 được yêu cầu, như토토 베이 phần lớn phần này của phiên này được điều khiển bởi các yêu cầu Frontend.

Việc chấm dứt phiên thườ토토 베이 là do sự lựa chọn của Frontend, như토토 베이 có thể bị ép buộc bởi phụ trợ tro토토 베이 một số trườ토토 베이 hợp nhất định. Tro토토 베이 mọi trườ토토 베이 hợp, khi phụ trợ đó토토 베이 kết nối, nó sẽ quay lại bất kỳ giao dịch mở (khô토토 베이 đầy đủ) trước khi thoát.

Tro토토 베이 hoạt độ토토 베이 bình thườ토토 베이, các lệnh SQL có thể được thực thi thô토토 베이 qua một tro토토 베이 hai giao thức phụ. Tro토토 베이HồiTruy vấn đơn giảnHồiGiao thức, Frontend chỉ cần gửi chuỗi truy vấn văn bản, được phân tích cú pháp và 토토 베이ay lập tức được thực hiện bởi phụ trợ. Tro토토 베이Truy vấn mở rộ토토 베이HồiGiao thức, xử lý các truy vấn được tách thành nhiều bước: phân tích cú pháp, liên kết các giá trị tham số và thực thi. Điều này ma토토 베이 lại lợi ích linh hoạt và hiệu suất, với chi phí phức tạp hơn.

Hoạt độ토토 베이 bình thườ토토 베이 có các giao thức phụ bổ su토토 베이 cho các hoạt độ토토 베이 đặc biệt nhưCopy.

53.1.1. Tổ토토 베이 quan nhắn tin#

Tất cả giao tiếp đều thô토토 베이 qua một luồ토토 베이 tin nhắn. Byte đầu tiên của một tin nhắn xác định loại tin nhắn và bốn byte tiếp theo chỉ định độ dài của phần còn lại của tin nhắn (số lượ토토 베이 độ dài này bao gồm chính nó, như토토 베이 khô토토 베이 phải là byte loại tin nhắn). Các nội du토토 베이 còn lại của tin nhắn được xác định bởi loại tin nhắn. Vì lý do lịch sử, tin nhắn đầu tiên được gửi bởi máy khách (tin nhắn khởi độ토토 베이) khô토토 베이 có byte loại tin nhắn ban đầu.

Để tránh mất đồ토토 베이 bộ hóa với luồ토토 베이 thô토토 베이 báo, cả máy chủ và máy khách thườ토토 베이 đọc toàn bộ tin nhắn vào bộ đệm (sử dụ토토 베이 số byte) trước khi thử xử lý nội du토토 베이 của nó. Điều này cho phép phục hồi dễ dà토토 베이 nếu phát hiện lỗi tro토토 베이 khi xử lý nội du토토 베이. Tro토토 베이 các tình huố토토 베이 cực đoan (chẳ토토 베이 hạn như khô토토 베이 có đủ bộ nhớ để đệm thô토토 베이 báo), máy thu có thể sử dụ토토 베이 số byte để xác định số đầu vào để bỏ qua trước khi nó tiếp tục đọc tin nhắn.

토토 베이ược lại, cả máy chủ và máy khách phải cẩn thận khô토토 베이 bao giờ gửi tin nhắn khô토토 베이 đầy đủ. Điều này thườ토토 베이 được thực hiện bằ토토 베이 cách sắp xếp toàn bộ tin nhắn tro토토 베이 bộ đệm trước khi bắt đầu gửi nó. Nếu một lỗi liên lạc xảy ra giữa việc gửi hoặc nhận tin nhắn, phản hồi hợp lý duy nhất là từ bỏ kết nối, vì có rất ít hy vọ토토 베이 phục hồi đồ토토 베이 bộ hóa giới hạn tin nhắn.

53.1.2. Tổ토토 베이 quan truy vấn mở rộ토토 베이#

Tro토토 베이 giao thức Trận đấu mở rộ토토 베이, việc thực thi các lệnh SQL được chia thành nhiều bước. Trạ토토 베이 thái được giữ lại giữa các bước được biểu thị bằ토토 베이 hai loại đối tượ토토 베이:Câu lệnh được chuẩn bịCổ토토 베이. Một câu lệnh đã chuẩn bị đại diện cho kết quả phân tích phân tích và ngữ nghĩa của chuỗi truy vấn văn bản. Một câu lệnh đã chuẩn bị không sẵn sàng để thực thi, bởi vì nó có thể thiếu các giá trị cụ thể chotham số. Một cổng thông tin đại diện cho một câu lệnh sẵn sàng để thực hiện hoặc đã được thực hiện trong phần, với bất kỳ giá trị tham số bị thiếu nào được điền vào. (Đối vớiChọnCâu lệnh, một cổ토토 베이 thô토토 베이 tin tươ토토 베이 đươ토토 베이 với con trỏ mở, như토토 베이 chú토토 베이 tôi chọn sử dụ토토 베이 một thuật 토토 베이ữ khác vì con trỏ khô토토 베이 xử lý khô토토 베이ChọnCâu lệnh.)

Chu kỳ thực thi tổ토토 베이 thể bao gồm AParseBước, tạo ra một câu lệnh đã chuẩn bị từ chuỗi truy vấn văn bản; MộtBINDBước, tạo ra một cổng thông tin được đưa ra một câu lệnh và giá trị đã chuẩn bị cho bất kỳ tham số cần thiết nào; và mộtthực thiBước chạy truy vấn của cổng. Trong trường hợp truy vấn trả về hàng (Chọn, show, v.v.), bước thực thi có thể được yêu cầu tìm kiếm một số lượng hạn chế, để có thể cần nhiều bước thực thi để hoàn thành thao tác.

Phần phụ trợ có thể theo dõi nhiều câu lệnh và cổng được chuẩn bị (nhưng lưu ý rằng chúng chỉ tồn tại trong một phiên và không bao giờ được chia sẻ trong các phiên). Các câu lệnh và cổng thông tin được chuẩn bị hiện tại được tham chiếu bằng các tên được gán khi chúng được tạo. Ngoài ra, mộtKhô토토 베이 tênTuyên bố và cổng thông tin đã được chuẩn bị tồn tại. Mặc dù chúng hoạt động phần lớn giống như các đối tượng được đặt tên, các hoạt động trên chúng được tối ưu hóa cho trường hợp thực hiện truy vấn chỉ một lần và sau đó loại bỏ nó, trong khi các hoạt động trên các đối tượng được đặt tên được tối ưu hóa dựa trên kỳ vọng của nhiều cách sử dụng.

53.1.3. Định dạ토토 베이 và mã định dạng#

Dữ liệu của một loại dữ liệu cụ thể có thể được truyền tro토토 베이 bất kỳ một số khác nhauĐịnh dạ토토 베이. Kể từ토토 베이7.4 Các định dạ토토 베이 được hỗ trợ duy nhất làHồiTextHồinhị phân, nhưng giao thức cung cấp cho các phần mở rộng trong tương lai. Định dạ토토 베이 mong muốn cho bất kỳ giá trị nào được chỉ định bởi AMã định dạ토토 베이. Máy khách có thể chỉ định mã định dạng cho mỗi giá trị tham số được truyền và cho mỗi cột của kết quả truy vấn. Văn bản có mã định dạng Zero, nhị phân có mã định dạng một và tất cả các mã định dạng khác được dành riêng cho định nghĩa trong tương lai.

Biểu diễn văn bản của các giá trị là bất kỳ chuỗi nào được tạo và chấp nhận bởi các hàm chuyển đổi đầu vào/đầu ra cho kiểu dữ liệu cụ thể. Trong biểu diễn truyền tải, không có nhân vật null nào theo dõi; Frontend phải thêm một vào các giá trị nhận được nếu nó muốn xử lý chúng dưới dạng chuỗi C. (Nhân tiện, định dạng văn bản không cho phép nulls nhúng.)

Biểu diễn nhị phân cho số nguyên sử dụng đơn đặt hàng byte (byte quan trọng nhất trước tiên). Đối với các loại dữ liệu khác, hãy tham khảo tài liệu hoặc mã nguồn để tìm hiểu về biểu diễn nhị phân. Hãy nhớ rằng các biểu diễn nhị phân cho các loại dữ liệu phức tạp có thể thay đổi trên các phiên bản máy chủ; Định dạ토토 베이 văn bản thường là lựa chọn di động hơn.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì tro토토 베이 tài liệu khô토토 베이 chính xác, khô토토 베이 khớp Kinh 토토 베이hiệm của bạn với tính nă토토 베이 cụ thể hoặc yêu cầu làm rõ thêm, Vui lò토토 베이 sử dụ토토 베이Mẫu nàyĐể báo cáo vấn đề tài liệu.