Tôi đang cố gắng tìm cách tốt nhất để định dạng chuỗi truy vấn sql. Khi tôi gỡ lỗi ứng dụng của mình, tôi muốn đăng nhập vào tệp tất cả các chuỗi truy vấn sql và điều quan trọng là chuỗi phải được định dạng đúng.
lựa chọn 1
def myquery():
sql = "select field1, field2, field3, field4 from table where condition1=1 and condition2=2"
con = mymodule.get_connection()
...
- Điều này tốt cho việc in chuỗi sql.
- Nó không phải là một giải pháp tốt nếu chuỗi dài và không phù hợp với chiều rộng tiêu chuẩn là 80 ký tự.
Lựa chọn 2
def query():
sql = """
select field1, field2, field3, field4
from table
where condition1=1
and condition2=2"""
con = mymodule.get_connection()
...
Ở đây mã rõ ràng nhưng khi bạn in chuỗi truy vấn sql, bạn nhận được tất cả những khoảng trắng khó chịu này.
u '\ nselect field1, field2, field3, field4 \ n_ _ ___ from table \ n _ ___ trong đó condition1 = 1 \ n _ ___ _ và condition2 = 2'
Lưu ý: Tôi đã thay thế khoảng trắng bằng dấu gạch dưới _
vì chúng được trình chỉnh sửa cắt bớt
Lựa chọn 3
def query():
sql = """select field1, field2, field3, field4
from table
where condition1=1
and condition2=2"""
con = mymodule.get_connection()
...
- Tôi không thích tùy chọn này vì nó phá vỡ tính rõ ràng của mã được lập bảng tốt.
Lựa chọn 4
def query():
sql = "select field1, field2, field3, field4 " \
"from table " \
"where condition1=1 " \
"and condition2=2 "
con = mymodule.get_connection()
...
- Tôi không thích tùy chọn này vì tất cả các lần nhập thêm vào mỗi dòng và cũng khó chỉnh sửa truy vấn.
Đối với tôi, giải pháp tốt nhất sẽ là Tùy chọn 2 nhưng tôi không thích các khoảng trắng thừa khi tôi in chuỗi sql.
Bạn có biết bất kỳ lựa chọn nào khác không?