Avatar billede gulbaek Nybegynder
10. februar 2003 - 12:27 Der er 8 kommentarer og
1 løsning

Fra Access til xml

Nogen der har nogle gode forslag/links til hvordan man henter noget data ud fra en access database og laver det om til xml ?

har følgende kode som virker fint, men kunne godt tænke mig at resultatet blev lavet om til en xml fil eller noget andet som også er nemt at hente data ud fra.

using System;
using System.Data.OleDb;

class OleDbTest{

public static void Main()
{
//create the database connection
OleDbConnection aConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\db1.mdb");

//create the command object and store the sql query
OleDbCommand aCommand = new OleDbCommand("select * from emp_test", aConnection);
try
{
aConnection.Open();

//create the datareader object to connect to table
OleDbDataReader aReader = aCommand.ExecuteReader();
Console.WriteLine("This is the returned data from emp_test table");

//Iterate throuth the database
while(aReader.Read())
{
Console.WriteLine(aReader.GetInt32(0).ToString());
}

//close the reader
aReader.Close();

//close the connection Its important.
aConnection.Close();
}

//Some usual exception handling
catch(OleDbException e)
{
Console.WriteLine("Error: {0}", e.Errors[0].Message);
}
}
}
Avatar billede _darkstar_ Nybegynder
10. februar 2003 - 12:29 #1
Brug MSXML - den kan generere det på nydelig og objekt-orienteret vis.

http://msdn.microsoft.com/library/default.asp?url=/nhp/Default.asp?contentid=28000438
Avatar billede gulbaek Nybegynder
10. februar 2003 - 12:32 #2
kunne nu tænke mig at se det på mit eget kodeeksempel
Avatar billede _darkstar_ Nybegynder
10. februar 2003 - 12:35 #3
Avatar billede _darkstar_ Nybegynder
10. februar 2003 - 12:36 #4
Det har jeg desværre ikke tid til. Jeg kan finde et lille eksempel på nettet til dig.
Avatar billede _darkstar_ Nybegynder
10. februar 2003 - 12:37 #5
Avatar billede Slettet bruger
10. februar 2003 - 12:42 #6
Du kan selv lave en XML fil og streame den:

        public System.Xml.XPath.XPathNodeIterator DBXMLStream( string AGenreListeID )
        {
            string resStr = "";
            string sqlString = "select * from * where * = *"; // Dit SQL

            OleDbConnection conn = new OleDbConnection();
            conn.ConnectionString = din connecyionstring
            conn.Open();
            OleDbCommand cmd = new OleDbCommand(sqlString, conn);
            OleDbDataReader myReader = cmd.ExecuteReader();

            resStr +=@"<?xml version=""1.0"" encoding=""UTF-8""?>";
            resStr += @"<item name=""root"">";
            // Always call Read before accessing data.
            while ( myReader.Read() )
            {
                resStr += @"<record name=""record"">";
                resStr += her laver du en xml node <xmlnode>værdi</xmlnode>
                resStr += @"</record>";
            }
            resStr += "</item>";
           
            StringReader strn = new StringReader(resStr);
           
            System.Xml.XPath.XPathDocument xpathdoc = new System.Xml.XPath.XPathDocument(strn);
            return xpathdoc.CreateNavigator().Select(".");
        }
    }
Avatar billede burningice Nybegynder
15. februar 2003 - 23:47 #7
hvad med at gøre brug af DataSet's WriteXml metode?

DataSet ds = new DataSet();

OleDbAdabpter adapter = new OleDbAdapter(query, conn);

adapter.fill(ds);

ds.WriteXml(path);

og vupti, du har indholdet af dit dataset skrevet ud i en xmlfil :)
Avatar billede _darkstar_ Nybegynder
15. februar 2003 - 23:53 #8
Det lyder altså også smart. Er det en ny facilitet i .NET-pakken?
Avatar billede burningice Nybegynder
16. februar 2003 - 00:03 #9
_darkstar_>> det må det være, siden at DataSet er en klasse som findes i .Net Class Libary :)

.Net og XML... to sider af samme sag ;) pjat... men jeg vil nu sige at det er MEGET nemt at arbejde med xml i .net...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester