Functions.XmlUpdatefram 方法 |
备注: |
---|
要使用XMLUpdateGRAM( ),您必须使用Set MultiLocks ON并启用表缓冲。 |
备注: |
---|
在调用XMLUpdateGRAM( )之前,您应该通过对现有游标和表调用CursorSetProp( ) 并使用KeyFieldList属性来指定键字段列表。如果不指定键字段, 前后表示中都将包含表中的所有字段。如果指定一个或多个键字段,只有这些字段会出现在前部分。 |
命名空间: XSharp.VFP
备注: |
---|
您必须提供映射架构。 |
1<ROOT xmlns:updg="urn:schemas-microsoft-com:xml-updategram"> 2<updg:sync mapping-schema="mySchema.xsd" > 3<updg:before>
备注: |
---|
要将X# OLE DB提供程序与XMLUpdateGRAM( )一起使用, 您必须在安装OLE DB提供程序的计算机上安装MSXML 3.0。 |
1Set MultiLocks ON 2Create CURSOR Test (mField M, cField I AutoInc) 3Insert Into Test (mField) VALUES ("123456789") 4Insert Into Test (mField) VALUES ("23456789") 5Insert Into Test (mField) VALUES ("3456789") 6Insert Into Test (mField) VALUES ("456789") 7CursorSetProp("Buffering",5) 8CursorSetProp("keyfieldlist",'cField') 9Update Test Set mField = "XXXXXXX" Where cField < 3 10StrToFile(XMLUpdateGRAM(),'xmlupdate.txt') 11MODIFY FILE xmlupdate.txt 12RETURN
1Select OrderID, CustID, NTOM(Total_Price) as Total_Price; 2From Orders Into CURSOR New_Orders READWRITE 3CursorSetProp("Buffering", 5, "New_Orders") 4Replace Total_Price WITH (Total_Price * 1.083) 5cXMLUpdg = XMLUpdateGRAM("New_Orders")
标志16 | 标志32 | 设置标志32768 |
未设置 | 未设置 | XML文档:Windows-1252。 Unicode数据:代码页1252。 字符数据:默认代码页,除非字段标记为NOCPTRANS。 |
True (.T) | 未设置 |
XML文档:游标的CodePage属性。如果XMLField CodePage属性大于零(0)
且与游标的代码页不匹配,则报告错误。 Unicode数据:游标对象的Code page属性。 字符数据:无。改用来自X#表(.dbf)的原始数据。 |
未设置 | 设置 |
XML文档:UTF-8代码页。 Unicode数据:UTF-8代码页。 字符数据:默认代码页,除非字段标记为NOCPTRANS, 在这种情况下不会进行额外的字符转换为UTF-8。 |
设置 | 设置 |
XML文档:UTF-8代码页。 Unicode数据:UTF-8代码页。 字符数据:默认代码页,除非字段标记为NOCPTRANS, 在这种情况下,使用SYS(3005)设置将数据转换为UTF-8。 |
标志16 | 标志32 | 不带32768标志 |
未设置 | 未设置 |
XML文档:Windows-1252。 Unicode数据:代码页1252。 字符数据:默认代码页,除非字段标记为NOCPTRANS。 |
True (.T) | 未设置 | XML文档:游标的CodePage属性。 字符数据:无。改用来自X#表(.dbf)的原始数据。 Unicode数据:游标对象的代码页属性。 |
未设置 | 设置 | XML文档:UTF-8代码页。 Unicode数据:UTF-8代码页。 字符数据:默认代码页,除非字段标记为NOCPTRANS,在这种情况下不会进行额外的字符转换为UTF-8。 |
设置 | 设置 |
XML文档:UTF-8代码页。 Unicode数据:UTF-8代码页。 字符数据:默认代码页,除非字段标记为NOCPTRANS,在这种情况下, 它们使用当前SYS(3005)设置的代码页转换为UTF-8。 |
nFlag | 位 | 输出描述 |
---|---|---|
0 | 0000 | (默认)使用UTF-8格式的XML。 |
1 | 0001 | 使用未格式化的XML,例如连续字符串XML。 |
2 | 0010 | 用开放和关闭元素包围空元素,例如<cc04></cc04>。 |
4 | 0100 | 保留字段中的空白。 |
8 | 1000 | 将Memo字段包装在CDATA部分中。 |
16 | 10000 | 输出编码。 |
32 | 100000 | 输出编码。 |
32768 | 无 | 表示应使用代码页。 |
备注: |
---|
当输出编码为UTF-8(默认)时,XML声明不包含Encoding=属性 (无编码属性 = UTF-8)。 |
备注: |
---|
通过组合第4位和第5位(0010000)设置编码标志。 |
编码标志 | 第4位和第5位 | 描述 |
---|---|---|
+0 | 00 | (默认)Windows 1252 |
+16 | 01 | 将输出编码属性设置为游标的代码页。 |
+32 | 10 | 将输出编码属性设置为UTF-8(无字符转换)。 |
+48 | 11 | 将输出编码属性设置为UTF-8,并将双字节字符转换为UTF-8。 |