Xml 它在sql加载程序中做什么?
你好,我不明白它是做什么的 有人向我解释吗Xml 它在sql加载程序中做什么?,xml,oracle,sql-loader,Xml,Oracle,Sql Loader,你好,我不明白它是做什么的 有人向我解释吗 load data infile * "str '</contact>'" INSERT into table address_book TRUNCATE FIELDS( dummy1 filler char(2000) terminated by "<contact>", contact_name char(2000) enclosed by "<contact_na
load data
infile * "str '</contact>'"
INSERT
into table address_book
TRUNCATE
FIELDS(
dummy1 filler char(2000) terminated by "<contact>",
contact_name char(2000) enclosed by "<contact_name>" and "</contact_name>",
address char(2000) enclosed by "<address>" and "</address>",
dummy2 filler char(2000) terminated by "</start>"
)
BEGINDATA
加载数据
填充*“str”
插入
进入表地址簿
截断
田地(
dummy1填充字符(2000)以“”结尾,
联系人姓名char(2000)用“”和“”括起来,
地址字符(2000)用“”和“”括起来,
dummy2填充字符(2000)以“”结尾
)
贝金达塔
示例:dummy1 filler:意思是在联系之前忽略所有内容?
谢谢基本上,高级的
Sqlldr
首先将控制文件中定义的字段与数据文件中的字段进行匹配。然后,如果它也匹配一个列名,它会尝试将其插入表中
请注意,填充线的str
部分:
infile * "str '</contact>'"
infle*“str”
告诉sqlldr记录以字符串“
结尾
因此我们可以看出,sqlldr
是从联系人记录加载一些数据。在这种情况下,将读取记录中的数据,直到找到字符串“
”,并且由于它与列名不匹配,而且它被定义为FILLER,因此sqlldr将忽略它。它只对联系人姓名和地址字段感兴趣
所以要回答你的问题,是的。:-) 谢谢你。你的回答很全面