[C#,Oracle SQL] Načítanie XMLTYPE z databázy

Programovacie jazyky, rady, poradňa...
Sagittarius
Guru
Guru
Používateľov profilový obrázok
Príspevky: 2883
Registrovaný: 13 feb 2007, 21:58
Bydlisko: Do nekonečna a ešte ďalej

[C#,Oracle SQL] Načítanie XMLTYPE z databázy

Príspevok od používateľa Sagittarius »

Chcel by som sa spýtať ako by som z Oracle databázy vytiahnuť do C# XMLType. Pokúšal som sa niečo vytvoriť, ale nefunguje to stále to vyhadzuje výnimky alebo errory. Hľadal som k tomu niečo na nete, pozrel toho veľa, ale nič mi nepomohlo, lebo väčšinou to nebolo celkom k môjmu prípadu.

Tabuľka:

Kód: Vybrať všetko

create table publikacie (
  data XMLTYPE);
XML:

Kód: Vybrať všetko

<publikacia id="">
    <nazov>nazov</nazov>
    <autori>
      <autor>autor</autor>
      <autor>autor</autor>
    </autori>
    <vydavatelstvo>vyd</vydavatelstvo>
    <katedra>K</katedra>
    <isbn>111111111</isbn>
    <datumVydania>31.3.2005</datumVydania>
    <typ>typ 1</typ>   
  </publikacia>
V tabuľke je už uložených 9 takýchto podobných xml elementov.

A kód v C#, ktorým som sa to pokúšal z databázy dostať.

Kód: Vybrať všetko

OracleClob clob;
            OracleConnection conn = new OracleConnection("Data Source=localhost:1521/XE;Persist Security Info=True;User ID=xmldbs;Password=nbusr123;");
            OracleCommand cmd = new OracleCommand(
            "SELECT P.DATA.GETCLOBVAL(P.DATA) FROM PUBLIKACIE P", conn);
            conn.Open();
            OracleDataReader dr = cmd.ExecuteReader();
            clob = dr.GetOracleClob(0);
            OracleXmlType xmlType = new OracleXmlType(clob);
            Console.WriteLine(xmlType.ToString());
            dr.Close();
            conn.Close();
            Console.ReadLine();
Ďakujem.
Napísať odpoveď