對于xml2ddl項目,Freshmeat.org提供了一整套基于GNU或者GPL通用公共許可證下的Python程序。在一個運行的Python環境下,這套工具能夠在許多操作系統上工作,包括Windows, Linux, 以及UNIX平臺上,同時也能工作在以下數據庫引擎:PostgreSQL, MySQL, Oracle, 以及Firebird.
基本上,xml2ddl運行用戶把一個XML表示的數據庫轉換成一套SQL或者DDL報表。根據他的制造者和管理者Scott Kirkwood的介紹,“XML到DDL盡力做到數據庫獨立以使得同樣的XML能夠用于各種不同的數據庫。例如對于快速測試各種數據庫的表現這是非常有用的”
開始這個過程之前,xml2ddl運行用戶指向一個模式,制定一個目標數據庫,并且出示必要的DDL或者SQL語句實例化數據庫。這種簡單的XML例子定義為一個名為schemal.xml的文件如下:
<table name="students" fullname="List of Students" desc="List of students with their full names"> <columns> <column name="id" fullname="Primary Key" type="integer" key="1" desc="Primary key for the table"/> <column name="student_name" fullname="Student Name" type="varchar" size="80" desc="The full name of the student"/> </columns> </table> </schema> |
使用下列命令行語法調用輸出PostgresSQL信息:xml2ddl-數據庫的schemal.xml,輸出結果如下:
DROP TABLE students; |
該xml2ddl程序也能夠檢查二個不同版本的XML圖例的區別并且生成需要的DDL或者SQL語句從而把這些相同的變化更新到相關的目標數據庫里面去。這就需要兩個相關的圖例(讓我們稱之為第二個schema2.xml并且取代schemal.xml),以及使用下面所示的語法:
如果schema2.xml看起來如下:
<schema> |
ALTER TABLE students ALTER student_name TYPE varchar(80); |
這其中的價值絕對值得思量,并且為那些幸運的成為使用一個他們支持的目標數據庫做出一個真正奇妙的數據集成以及管理工具。
新聞熱點
疑難解答