Mysql數據庫編碼成績 (修正數據庫,表,字段編碼為utf8)。本站提示廣大學習愛好者:(Mysql數據庫編碼成績 (修正數據庫,表,字段編碼為utf8))文章只能為提供參考,不一定能成為您想要的結果。以下是Mysql數據庫編碼成績 (修正數據庫,表,字段編碼為utf8)正文
示例文件以下(不貼DTD了,舉簡略例子解釋一下)
<trans>
<transdetail>
<order><date/></order>
<orderdetail><product/></orderdetail>
<orderdetail><product/></orderdetail>
</transdetail>
<transdetail>
<order><date/></order>
<orderdetail><product/></orderdetail>
<orderdetail><product/></orderdetail>
</transdetail>
</trans>
我的表構造,我想年夜家的表也應當都是如許設計的
order(發賣定單,包含客戶,日期等信息)
orderdetail(發賣定單明細,包含產物,數目及價錢信息)
至此,能夠明眼人一眼就可以看出,這個xml的格局設置有些成績,例如如許能夠加倍公道
<trans>
<!--transdetail 這個節也許是過剩的-->
<order>
<date/>
<detail><!-- 明細是一個定單的一部門,不該該離開定單頭-->
<orderdetail><product/></orderdetail>
<orderdetail><product/></orderdetail>
</detail>
</order>
<order>
<date/>
<detail>
<orderdetail><product/></orderdetail>
<orderdetail><product/></orderdetail>
</detail>
</order>
</trans>
不外人家是ZF部分,改不了的,所以糟糕也得做
pb9中的處置代碼:其其實pb9種只寫了三行代碼,真實的代碼其實只要一行,就是增長了一個窗口,下面放了一個數據窗口,一個按鈕,按鈕裡寫了這麼一行代碼,呵呵
dw_export.save("c:\test.xml",xml!,false)
其實真正要處置的是界說個兩個數據窗口,重要是界說他們的xml模版:
d_order(定單頭數據出口,第二行代碼,可以在EITX中設置)
1.新建數據窗口(這裡留意,假如若何前提的數據有多行時,最好在SQL中停止group,不然生成的數據會有反復)
3.在export/import template xml(上面簡稱EITX)編纂區點右鍵,save as另外一個名字
4.把data export下的use template設置為你方才保留的模版名
界說好的模版以下所示:
<?xml version=~"1.0~" encoding=~"gb2312~" standalone=~"no~"?>
<trans>
<transdetail __pbband=~"detail~"><!-- 在EITX中的transdetail節上點右鍵選中"starts detail" [注1] -->
<order>
<date>order_date</date>
</order>
dw_detail <!-- 在EITX中的transdetail節上點右鍵選"add child"下的"datawindow control refrence" [注2] -->
</transdetail>
</trans>
有兩點須要留意
[注1]這個start detail,將掌握數據的輪回,所以須要選中,然則每一個xml只能界說一個,這裡就會發生一個成績,假如我定單頭輪回後,若何再讓定單明細輪回,結論是,在一個數據窗口中沒法完成,必需分數據窗口停止處置,也就有了注2
[注2]我們須要在d_order中拔出一個report,也就是d_orderdetail,在d_order中的control list(同在datawindow control refrence中雷同)中就是dw_detail(默許稱號是dw_1,我更名了)
d_orderdetail(定單明細數據出口,也就是下面report,dw_detail援用的數據窗口,第三行代碼,可以在EITX中設置)
1.新建數據窗口
2.在export/import template xml(上面簡稱EITX)編纂區點右鍵,save as另外一個名字
3.把data export下的use template設置為你方才保留的模版名
<?xml version=~"1.0~" encoding=~"gb2312~" standalone=~"no~"?>
<detail><!-- 這兒界說為orderdetail是沒用的,牽套時,會被疏忽 [注3]-->
<orderdetail __pbband=~"detail~"><!-- [注4] -->
<product>product_name</product>
</orderdetail>
</detail>
[注3]留意,當我們在d_order中導出xml時,d_orderdetail中的xml聲明和頂節點會被疏忽
[注4]這個處所界說的就是orderdetail部門,由於一個定單能夠會有多條明細信息,所以我們須要設置為start detail,也就是輪回。
最初生成的文件以下
<trans>
<transdetail>
<order><date>20080101</date></order>
<orderdetail><product>甲</product></orderdetail>
<orderdetail><product>已</product></orderdetail>
</transdetail>
<transdetail>
<order><date>20080102</date></order>
<orderdetail><product>甲</product></orderdetail>
<orderdetail><product>丙</product></orderdetail>
</transdetail>
</trans>
注:假如讓你設計一個xml接口文件,請必定要斟酌應用者的便利性