วันพฤหัสบดีที่ 16 มกราคม พ.ศ. 2557

ErlSQL : SQL Statement สะดวกๆ ด้วย Erlang

ใครว่า ลอก Project ชาวบ้านมาเป็นของตัวเอง ง่าย!!!?
ไม่จริงเลย วันนี้พบปัญหาว่า ต้อง Port Project ที่มีคนเขียนไว้ด้วย .net (C#) มาเป็น Erlang จริงๆ มันก็ไม่ยากหรอก แต่ปัญหาใหญ่ที่สุดตอนนี้คือการ Port ส่วนฐานข้อมูล Oracle กว่า 30 Tables ที่สำคัญบาง Table มีขนาด 300 fields (โหดโพด...)

 จะให้เขียน Statement ตรงๆ คงมึนกันไปข้าง เลยลองค้นดูพบ ErlSQL โดย Yariv (เพื่อนผมเรียก Yariv ว่า โต ซิลลี่ฟูล เขาบอกว่า หน้าคล้ายๆ โต)
http://yarivsblog.blogspot.com/2006/09/introducing-erlsql-easy-expression-and.html

Yariv เขียน Module อำนวยความสะดวกในการ Generate SQL statement ชื่อ ErlSQL ไว้เมื่อปี 2008 ซึ่งปัจจุบันเป็นส่วนหนึ่งของ ErlyWeb 0.7.2
https://github.com/yariv/erlyweb

ผมเอามาเฉพาะ ErlSQL.erl แล้วให้ Rebar จัดการเข้ากับ Project ปัจจุบัน (ก็แค่ copy ไปไว้ใน src folder นั่นแหละ)

เวลาใช้ก็แค่


1> erlsql:sql({insert,project,[{foo,5},{baz,"bob"}]}).
[<<"INSERT INTO ">>,<<"project">>,40,
 [<<"foo">>,44,<<"baz">>],
 <<") VALUES ">>,
 [40,[<<"5">>,44,<<"'bob'">>],41]]
2>

แหม่...สะดวกจริงๆ...

ไม่มีความคิดเห็น:

แสดงความคิดเห็น