Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Đủ điều kiện cho một tên cột bảng tạm thời trong jOOQ

Có hai cách để tương tác động với các bảng / cột (tức là không sử dụng trình tạo mã) trong jOOQ:

Sử dụng SQL thuần túy (org.jooq.SQL )

Đó là những gì bạn đang làm. Rõ ràng là bạn có thể đủ điều kiện trực tiếp cho các cột trong Field SQL thuần túy của mình tham chiếu theo hai cách:

Bằng cách lặp lại "tmp" chuỗi trong mỗi trường:

Table<Record> TMP = DSL.table("tmp");
Field<String> TYPE = DSL.field("tmp.type", String.class);
Field<String> TOKEN = DSL.field("tmp.token", String.class);

Bằng cách nhúng "tmp" tham chiếu trong mẫu SQL thuần túy:

Table<Record> TMP = DSL.table("tmp");
Field<String> TYPE = DSL.field("{0}.type", String.class, TMP);
Field<String> TOKEN = DSL.field("{0}.token", String.class, TMP);

Chức năng SQL thuần túy được ghi lại ở đây trong sách hướng dẫn

Sử dụng các tham chiếu đủ điều kiện (org.jooq.Name )

Đó có thể là những gì bạn muốn làm thay vào đó. Bạn sẽ viết:

Table<Record> TMP = DSL.table(DSL.name("tmp"));
Field<String> TYPE = DSL.field(DSL.name("tmp", "type"), String.class);
Field<String> TOKEN = DSL.field(DSL.name("tmp", "token"), String.class);

Chức năng đặt tên được mô tả ở đây trong sách hướng dẫn .

Ưu điểm của phương pháp này là:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Phân trang truy vấn tùy chỉnh Cakephp

  2. Mô phỏng chức năng lag trong MySQL

  3. Truyền MySQL của -1 trả về 18446744073709551615

  4. Cách thiết lập cơ sở dữ liệu WordPress MySQL trên đám mây

  5. array_push () so với $ array [] =.... Cái nào nhanh nhất?