Gắn tham số SQL (SQL Parameter Binder)
Dán câu SQL JDBC/Hibernate có placeholder ? cùng các dòng log `binding parameter` để nhận câu truy vấn hoàn chỉnh với giá trị thật đã chèn sẵn — chuỗi được bọc nháy, số giữ nguyên và [null] chuyển thành NULL. Hỗ trợ cả định dạng log Hibernate 5 và Hibernate 6, chạy hoàn toàn trong trình duyệt.
Vui lòng dán câu SQL kèm các dòng binding parameter
Cách dùng:
- Dán câu SQL của bạn (dòng đầu)
- Tùy chọn dán các dòng log
binding parameterđể gắn giá trị vào các placeholder ? - Giá trị được format theo kiểu JDBC — chuỗi được bọc nháy, số giữ nguyên, [null] thành NULL
- Hỗ trợ định dạng Hibernate 6 (1:VARCHAR) <- [v] và Hibernate 5 [1] as [VARCHAR] - [v]
- Nếu không tìm thấy binding parameter, câu SQL được hiển thị nguyên trạng
Giới thiệu công cụ
SQL Parameter Binder giải quyết một phiền toái hằng ngày của lập trình viên Java và Spring Boot: một truy vấn được Hibernate log ra in câu SQL với placeholder ? trên một dòng và các giá trị tham số thật nằm ở các dòng log binding parameter riêng bên dưới. Công cụ này ghép chúng lại thành một câu truy vấn chạy được với giá trị thật đã chèn sẵn.
Dán câu SQL và các dòng binding vào, nó điền từng ? theo thứ tự — bọc nháy cho chuỗi, giữ nguyên số và biến [null] thành NULL — để bạn sao chép câu truy vấn hoàn chỉnh thẳng vào console cơ sở dữ liệu nhằm tái hiện lỗi. Nó hiểu cả định dạng log Hibernate 5 và Hibernate 6, chạy hoàn toàn trong trình duyệt.
Cách sử dụng
- Sao chép dòng SQL có placeholder ? từ log ứng dụng của bạn.
- Sao chép các dòng log binding parameter đi kèm theo sau.
- Dán cả hai vào ô nhập của công cụ.
- Bộ gắn khớp từng giá trị với placeholder của nó theo thứ tự.
- Đọc câu truy vấn hoàn chỉnh với chuỗi được bọc nháy và null thành NULL.
- Sao chép vào console cơ sở dữ liệu để chạy hoặc gỡ đúng câu truy vấn đó.
Tính năng
- Điền placeholder ? từ các dòng log binding parameter của Hibernate.
- Hỗ trợ cả định dạng log Hibernate 5 và Hibernate 6.
- Bọc nháy cho giá trị chuỗi và giữ nguyên giá trị số.
- Chuyển binding [null] thành NULL đúng chuẩn SQL.
- Giữ đúng thứ tự placeholder để giá trị vào đúng cột.
- Biến một log bị tách rời thành câu truy vấn chạy trực tiếp để tái hiện lỗi.
- Hoàn toàn phía client — truy vấn và giá trị log của bạn không bao giờ rời trình duyệt.
Câu hỏi thường gặp
Log SQL của tôi có bị gửi lên server không?
Không. Bộ gắn chạy hoàn toàn trong trình duyệt, nên câu truy vấn và các giá trị tham số trong log — có thể chứa dữ liệu production — không bao giờ rời khỏi thiết bị của bạn.
Công cụ hỗ trợ những định dạng log Hibernate nào?
Nó nhận diện cả kiểu output log binding parameter của Hibernate 5 và Hibernate 6, nên bạn có thể dán log từ cả hai phiên bản mà không cần định dạng lại.
Các kiểu giá trị khác nhau được xử lý thế nào?
Giá trị chuỗi được bọc trong dấu nháy đơn, số được chèn thẳng không có nháy để giữ tính số, và binding [null] được thay bằng từ khóa SQL là NULL.
Vì sao các giá trị cần đúng thứ tự?
JDBC gắn tham số theo vị trí, nên dấu ? đầu tiên nhận giá trị log đầu tiên, dấu ? thứ hai nhận giá trị thứ hai, v.v. Công cụ dựa vào thứ tự đó để đặt mỗi giá trị vào đúng chỗ.
Công cụ này hữu ích nhất cho việc gì?
Tái hiện lỗi production. Thay vì đoán truy vấn đã chạy với giá trị nào, bạn dán log vào và nhận đúng câu SQL để chạy trong console trên một bản sao của cơ sở dữ liệu.