3bb84f18e370203c59460c07ea3dbd4800726dee
[dbsrgits/SQL-Translator.git] / t / data / roundtrip.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <!-- 
3 Created by SQL::Translator::Producer::SqlfXML
4 Created on Fri Aug 15 15:08:18 2003
5
6  -->
7 <schema xmlns="http://sqlfairy.sourceforge.net/sqlfairy.xml">
8     
9   <tables>
10       <table order="1" name="Basic">
11         <fields>
12           <field
13               name="id"
14               is_primary_key="1" is_foreign_key="0"
15               size="10" data_type="int" is_auto_increment="1" order="1"
16               is_nullable="0">
17               <extra ZEROFILL="1" />
18           </field>
19           <field
20               name="title"
21               is_primary_key="0" is_foreign_key="0"
22               size="100" is_auto_increment="0" data_type="varchar"
23               order="2" default_value="hello" is_nullable="0" />
24           <field
25               name="description"
26               size="0" data_type="text" order="3" default_value="" />
27           <field name="email" size="500" data_type="varchar" order="4">
28               <extra foo="bar" hello="world" bar="baz" />
29           </field>
30           <field name="explicitnulldef" size="0" data_type="varchar" order="5" />
31           <field name="explicitemptystring" size="0"
32               data_type="varchar" order="6" default_value="" />
33           <field name="emptytagdef" size="0"
34               data_type="varchar" order="7" default_value="" >
35               <comments>Hello emptytagdef</comments>
36           </field>
37           <field name="another_id" size="10"
38               data_type="int" default_value="2" />
39           <field name="timest" size="0"
40               data_type="timestamp" order="7" >
41           </field>
42           <field name="numeric" size="9,1"
43               data_type="numeric" order="8" >
44           </field>
45           <field name="decimal" size="10,2"
46               data_type="decimal" order="9" >
47           </field>
48         </fields>
49
50         <indices>
51           <index name="titleindex" fields="title" type="NORMAL">
52             <extra foo="bar" hello="world" bar="baz" />
53           </index>
54         </indices>
55
56         <constraints>
57           <constraint name="" type="PRIMARY KEY" fields="id"
58               reference_table="" options="" deferrable="1" match_type=""
59               expression="" on_update="" on_delete="">
60               <extra foo="bar" hello="world" bar="baz" />
61           </constraint>
62           <constraint name="emailuniqueindex" type="UNIQUE" fields="email" />
63           <constraint name="Basic" type="FOREIGN KEY" fields="another_id"
64               reference_table="Another" options="" deferrable="1" match_type=""
65               expression="" on_update="" on_delete="">
66           </constraint>
67         </constraints>
68
69         <extra foo="bar" hello="world" bar="baz" mysql_table_type="InnoDB" />
70       </table>
71
72       <table order="1" name="Another">
73         <fields>
74           <field
75               name="id"
76               is_primary_key="1" is_foreign_key="0"
77               size="10" data_type="int" is_auto_increment="1" order="1"
78               is_nullable="0">
79           </field>
80         </fields>
81
82         <constraints>
83           <constraint name="" type="PRIMARY KEY" fields="id"
84               reference_table="" options="" deferrable="1" match_type=""
85               expression="" on_update="" on_delete="">
86           </constraint>
87         </constraints>
88
89         <extra foo="bar" hello="world" bar="baz" mysql_table_type="InnoDB" />
90       </table>
91
92       <table order="1" name="`table` [with] &quot;quotes&quot;">
93         <fields>
94           <field
95               name="`field` [with] &quot;quotes&quot;"
96               is_primary_key="1" is_foreign_key="0"
97               size="10" data_type="int" is_auto_increment="1" order="1"
98               is_nullable="0">
99           </field>
100         </fields>
101       </table>
102   </tables>
103
104   <views>
105       <view name="email_list" fields="email" order="1">
106           <sql>SELECT email FROM Basic WHERE (email IS NOT NULL)</sql>
107           <extra foo="bar" hello="world" bar="baz" />
108       </view>
109   </views>
110
111   <triggers>
112       <trigger name="foo_trigger" database_event="insert" on_table="Basic"
113           perform_action_when="after" order="1">
114           <action>update modified=timestamp();</action>
115           <extra foo="bar" hello="world" bar="baz" />
116       </trigger>
117       <trigger name="bar_trigger" database_events="insert , update" on_table="Basic"
118           perform_action_when="before" order="1">
119           <action>update modified2=timestamp();</action>
120           <extra hello="aliens" />
121       </trigger>
122   </triggers>
123
124   <procedures>
125       <procedure name="foo_proc" order="1" owner="Nomar" parameters="foo,bar">
126           <sql>select foo from bar</sql>
127           <comments>Go Sox!</comments>
128           <extra foo="bar" hello="world" bar="baz" />
129       </procedure>
130   </procedures>
131
132 </schema>