2009-01-30 23 views
1

我正在研究PHP框架,這個框架的一部分工作是編寫SQL代碼來生成新的MySQL列。我應該如何在PHP中設計一個SQL列生成器的接口?

什麼是最優雅的方式來傳遞一列的參數,然後把它變成SQL代碼?作爲一個例子這裏是一些YAML我有,指定用於創建VARCHAR列參數:

- type: character 
     data-type: 
      type: varchar 
      length: 255 
      decimals: null 
      unsigned: null 
      zerofill: null 
      collate: utf8_unicode_ci 
      character-set: utf8 
      binary: false 
      spatial-type: null 
      values: null 
     nullify: true 
     default: null 
     increment: false 
     unique: false 
     primary: false 
     comment: This is a small general text field. 
     format: default 
     storage: default 

我的設計約束條件如下:

  1. 的YAML不能包含任何SQL語法
  2. 的PHP代碼必須儘可能簡潔。
+0

對不起,但這似乎是一個可怕的設計。那樣把它包含在YAML中是不是一堆開銷? – 2009-01-30 23:57:21

回答

1

我建議您製作一個類,它需要一個可以定義所需各種配置點的數組作爲構造函數參數。那些在每個特定情況下無關緊要的東西你都沒有定義。

0

不完全相關,但您知道Propel項目嗎?

他們使用xml來解釋模型,但the symfony project(使用propel作爲插件)使用yaml。

相關問題