10

Is there a tool to convert a SQL schema to Korma entities?

Lukas Eder
  • 211,314
  • 129
  • 689
  • 1,509
Timo Westkämper
  • 21,824
  • 5
  • 78
  • 111

2 Answers2

2

Not yet, but you could query you DBMS' Data Dictionary to get you started.

For instance, on MySQL you could start with:

select concat('(defentity ', t.table_name ,')') as defentity
  from information_schema.tables t
  where table_schema = 'mySchema';
Henrique Ordine
  • 3,337
  • 4
  • 44
  • 70
2

This works for me, took some thought to implement. I was a bit blown back that Korma does not have this feature! (note: I ran this against MSSQL)

(defentity INFORMATION_SCHEMA.tables)
(def tables (map #(get % :TABLE_NAME) 
              (select 'INFORMATION_SCHEMA.tables (fields :TABLE_NAME) 
                      (where {:TABLE_TYPE "BASE TABLE"})))) ;notice the quote

(prn tables)
;(map #(def %) tables) ;additional concept
(map #(defentity %) tables) ;not sure this is required anymore

(select (first tables))
scape
  • 652
  • 12
  • 27