用于Korma实体的SQL模式的代码生成工具

时间:2012-07-11 14:20:27

标签: sql clojure korma

是否有将SQL架构转换为Korma实体的工具?

2 个答案:

答案 0 :(得分:2)

还没有,但你可以查询DBMS的数据字典以帮助你入门。

例如,在MySQL上你可以从:

开始
select concat('(defentity ', t.table_name ,')') as defentity
  from information_schema.tables t
  where table_schema = 'mySchema';

答案 1 :(得分:2)

这对我有用,需要一些思考来实施。 Korma没有这个功能,我有点害怕! (注意:我是针对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))