Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 1997

สรุปการ generate code จาก sql ด้วย sqlc, DBML และ Taskfile

$
0
0

ใน project ที่ทำอยู่นั้น มีการใช้งาน database ตลอด
พบว่าต้องเขียนชุดคำสั่ง sql และ เขียน code ซ้ำ ๆ เยอะ
จึงเกิดความขี้เกียจ ก็เลยหาแนวทางแก้ไขหน่อย
จึงพบแนวทางที่น่าสนใจ และ นำมาใช้งานดังนี้

สิ่งที่ใช้งานประกอบไปด้วย

  • Taskfile สำหรับเขียน step การทำงาน ซึ่งดูง่ายกว่า Makefile มาก
  • DBML (Database Markup Language) สำหรับการออกแบบ table ต่าง ๆ และ generate มาเป็นคำสั่ง sql ได้เลย ง่ายมาก ๆ
  • sqlc สำหรับการสร้าง code เป็นภาษา Go จากคำสั่ง sql

มาดูการใช้งานกัน

ขั้นตอนการทำงานเป็นดังรูป

โดยใน Taskfile จะเขียนดังนี้

[gist id="b397c5a052a9273aa485019f588d16f0" file="Taskfile.yml"]

ทำการ run ตามนี้

[gist id="b397c5a052a9273aa485019f588d16f0" file="1.txt"]

ตัวอย่างของ code ที่ generate ได้เป็นดังนี้

[gist id="b397c5a052a9273aa485019f588d16f0" file="demo.go"]

เพียงเท่านี้ก็ได้ process การทำงานที่ automate มากขึ้น
ช่วยลดภาระงานไปได้เยอะเลย
เพียงแค่ออกแบบ table ใน DBML เท่านั้นเอง

สามารถดูตัวอย่าง code เพิ่มเติมได้ที่ GitHub::Up1


Viewing all articles
Browse latest Browse all 1997

Trending Articles