C# 在Oracle中使用XML保存数据
我使用以下代码保存。将记录更新到OracleC# 在Oracle中使用XML保存数据,c#,oracle,C#,Oracle,我使用以下代码保存。将记录更新到Oracle OracleConnection con = new OracleConnection(constr); con.Open(); // Create the command. OracleCommand cmd = new OracleCommand("", con); cmd.CommandText = "<?xml version=\"1.0\"?>\n" + "<ROWSET>\n" + " <M
OracleConnection con = new OracleConnection(constr);
con.Open();
// Create the command.
OracleCommand cmd = new OracleCommand("", con);
cmd.CommandText = "<?xml version=\"1.0\"?>\n" +
"<ROWSET>\n" +
" <MYROW>\n" +
" <FIELD1>2</FIELD1>\n" +
" <FIELD2>zafar</FIELD2>\n" +
" </MYROW>\n" +
"</ROWSET>\n";
// Set the XML save properties.
KeyColumnsList = new string[1];
KeyColumnsList[0] = "FIELD1";
UpdateColumnsList = new string[1];
UpdateColumnsList[0] = "FIELD2";
cmd.XmlSaveProperties.KeyColumnsList = KeyColumnsList;
cmd.XmlSaveProperties.UpdateColumnsList = UpdateColumnsList;
cmd.XmlSaveProperties.RowTag = "MYROW";
cmd.XmlSaveProperties.Table = "testconn";
cmd.XmlSaveProperties.Xslt = null;
cmd.XmlSaveProperties.XsltParams = null;
rows = cmd.ExecuteNonQuery();
Console.WriteLine("rows: " + rows);
OracleConnection con=新的OracleConnection(cont);
con.Open();
//创建命令。
OracleCommand cmd=新的OracleCommand(“,con”);
cmd.CommandText=“\n”+
“\n”+
“\n”+
“2\n”+
“zafar\n”+
“\n”+
“\n”;
//设置XML保存属性。
KeyColumnsList=新字符串[1];
KeyColumnsList[0]=“FIELD1”;
UpdateColumnsList=新字符串[1];
UpdateColumnsList[0]=“FIELD2”;
cmd.XmlSaveProperties.KeyColumnsList=KeyColumnsList;
cmd.XmlSaveProperties.UpdateColumnsList=UpdateColumnsList;
cmd.XmlSaveProperties.RowTag=“MYROW”;
cmd.XmlSaveProperties.Table=“testconn”;
cmd.XmlSaveProperties.Xslt=null;
cmd.XmlSaveProperties.XsltParams=null;
rows=cmd.ExecuteNonQuery();
Console.WriteLine(“行:”+行);
在
字段2
列中,我想使用从双
中选择用户。我无法保存当前数据库用户。命令文本中的数据结构假定所有值都是文字。无法让它识别内部查询或表达式。如果要查询用户
,则必须单独进行查询并将其合并到数据中。这在Xslt
和XsltParams
子句中是可能的。有什么原因不能只使用普通的INSERT/UPDATE语句吗?我想一次保存/更新多条记录。为什么要这样做?您在执行标准更新/插入时是否存在一些合理的性能问题?