Just nu i M3-nätverket
Jump to content

XML som enkel databas


Jocke001

Recommended Posts

Hej! Upptäckte ganska nyligen XML. Verkar vara en mycket intressant teknik som kanske kan lösa ett problem åt mig. Så här ligger det till...

 

Jag har ett antal (ca 150 st) mätinstrument som jag vill spara ca 10 informationsposter om i en enkel databas. Jag vill kunna lägga till fler instrument i databasen och ytterliggare någon post för varje instrument i efterhand.

 

All data finns nu i ett, milt sagt, rörigt Excel-dokument. Och jag funderar nu på om man skulle kunna göra något snyggare med XML, HTML och Javascript som man kan titta på i en webbläsare, IE5+ i första hand (lokalt, ej över internet).

 

Frågan är om man enkelt kan göra tillägg i ett XML-dokument med hjälp av javascript?

Ett alternativ är ju att använda FileSystemObject för att skriva direkt i xml-filen.

 

Hoppas att någon förstår mitt problem...

 

 

Link to comment
Share on other sites

Anledningen att jag vill göra det i XML är att man alltid kan läsa informationen oberoende av program.

 

En databas kräver Access (eller liknande program).

XML kan man ju till och med läsa i Notepad.

 

 

Link to comment
Share on other sites

Carlos Cadalso

XML är ett ganska intressant och framåt teknologi. Du får inte glömma att det är en hel del andra teknologi som förknippas med XML bl.a. XSL.

 

Generell kan man säga att XML används för att strukturera och beskriva information alltså som informationsbehållare.

 

Medan XSL eller HTML används för att presentera information

 

 

 

[inlägget ändrat 2003-01-30 11:36:39 av C@rlos]

Link to comment
Share on other sites

Här får du ett enkelt exempel på hur man kan manipulera ett xml-dokument mha javascript:

antag att dokumentet ser ut så här:

<root>
 <parent id="1">
   <child parentid="1" id="1_1">
      data
   </child>
  </parent>
</root>

och så vill vi lägga till en ny child-nod:

NODE_ELEMENT = 1
NODE_ATTRIBUTE = 2
var oXMLDOM = new ActiveXObject("MSXML.DOMDocument")
oXMLDOM.load("\\datornamn\sökväg\fil.xml")

var oNewNode = oXMLDOM.createNode(NODE_ELEMENT, "child", "")

var oNewAttribute = oXMLDOM.createNode(NODE_ATTRIBUTE, "parentid", "")
oNewAttribute.value = "1"
oNewNode.attributes.setNamedItem(oNewAttribute)

oNewAttribute = oXMLDOM.createNode(NODE_ATTRIBUTE, "id", "")
oNewAttribute.value = "1_2"
oNewNode.attributes.setNamedItem(oNewAttribute)

oNewNode.text = "mera data"

oXMLDOM.documentElement.firstChild.appendChild(oNewNode)

så ser xml-dokumentet ut såhär:

<root>
 <parent id="1">
   <child parentid="1" id="1_1">
      data
   </child>
   <child parentid="1" id="1_2">
      mera data
   </child>
  </parent>
</root>

läs mer om Microsoft xml parser här:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk30/htm/xmmscxmlreference.asp

 

//Telle

 

[inlägget ändrat 2003-01-30 12:00:09 av Telleluy]

Link to comment
Share on other sites

Kalas! :)

 

Men det verkar som att XML-filen inte uppdateras med det nya elementet.

Kör precis den kod du angivit.

 

Min XML-fil ser ut så här

<?xml version="1.0"?>
<root>
<parent id="1">
<child parentid="1" id="1_1">
data
</child>
</parent>
</root>

 

 

Link to comment
Share on other sites

ah ok. det är bara objektet i scriptkoden man manipulerar. för att spara det lägg till detta längst ner i scriptet:

 

oXMLDOM.save("\\dator\sökväg\filnamn.xml")

 

edit: glömde visst paranteserna. vb-skadad?

//Telle

 

[inlägget ändrat 2003-01-30 14:17:44 av Telleluy]

Link to comment
Share on other sites

Ja XSL kommer jag att använda.

Har nyligen gått igenom "kursen" http://www.w3cschools.com som ger en bra inblick.

 

Informationsbehållare, som Carlos säger, tycker jag är ett mycket bättre ord för det jag menar ovan.

Databas låter (och är) mer komplicerat.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...