Toon posts:

[MySql] Programma om nieuwe records te zoeken.

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben op zoek naar een stuk software wat voor mij de verschillen in data tussen twee databases kan vinden. Het gaat dus niet om de structuur van de database, daarvoor is Mysql-Diff geschikt, maar om de data.

Ik maak bijvoorbeeld 's morgens een dump van mijn DB in een SQL file. Aan het eind van de dag doe ik dat nogmaals en vergelijk de twee files. Ik wil dan de records zien die die dag zijn ingevoerd. Weet iemand of hier software voor is?

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Dat kan je toch oplossen met een query?

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • stp_4
  • Registratie: Maart 2003
  • Laatst online: 29-07 17:11
Hier bij ons op het werk gebruiken we software van Red Gate om data te vergelijken tussen twee SQL databases. Zo kun je precies zien welke records zijn aangepast, verwijderd, ingevoerd en in welke database de verandering heeft plaatsgevonden. Wij gebruiken deze software echter om de omzetting van een testdatabase naar een productiedatabase te controleren op de huidige productiedatabase ( op data niveau ).

stp - PSN ID: stp_4


Verwijderd

Topicstarter
Ehm, dan moet je toch per record opslaan wanneer het record is aangemaakt? Dan zou het kunnen, dat is hier niet het geval. Daarnaast gaat het om aardig wat tabellen...

Verwijderd

Topicstarter
Iemand een idee hoe ik dit kan doen? Met diff lijkt het ook niet echt goed te werken.

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Verwijderd schreef op woensdag 09 februari 2005 @ 13:53:
Iemand een idee hoe ik dit kan doen? Met diff lijkt het ook niet echt goed te werken.
Gaat het alleen om nieuwe records of ook aangepaste records?

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • stp_4
  • Registratie: Maart 2003
  • Laatst online: 29-07 17:11
Heb je al gekeken naar de software die ik al eerder genoemd hebt?

http://www.red-gate.com/products.htm

stp - PSN ID: stp_4


Verwijderd

Topicstarter
Beide eigenlijk. Ik heb nu zelf het idee om gebruik te maken van de mysql binlog. Die registreert de queries die zorgen voor een wijziging in de database (UPDATE, INSERT, DELETE). Die queries kan ik dus uitlezen. Waar ik het voor wil gebruiken is een migratie van Access naar MySQL. Ik gebruik een C# tool om de records om te zetten naar de nieuwe database, maar wil ook de gegevens die in het nieuwe systeem zijn ingevoerd weer terug kunnen zetten naar Access. Als ik de binlog van MySQL heb kan ik de queries analyseren, aanpassen en op de juiste plaatsen uitvoeren in Access.

Klinkt simpel :7

  • stp_4
  • Registratie: Maart 2003
  • Laatst online: 29-07 17:11
Verwijderd schreef op donderdag 10 februari 2005 @ 10:07:
Beide eigenlijk. Ik heb nu zelf het idee om gebruik te maken van de mysql binlog. Die registreert de queries die zorgen voor een wijziging in de database (UPDATE, INSERT, DELETE). Die queries kan ik dus uitlezen. Waar ik het voor wil gebruiken is een migratie van Access naar MySQL. Ik gebruik een C# tool om de records om te zetten naar de nieuwe database, maar wil ook de gegevens die in het nieuwe systeem zijn ingevoerd weer terug kunnen zetten naar Access. Als ik de binlog van MySQL heb kan ik de queries analyseren, aanpassen en op de juiste plaatsen uitvoeren in Access.
Dat is al heel wat meer info dan in je in eerste instantie gaf. Het gaat dus om twee verschillende type databases.

[ Voor 4% gewijzigd door stp_4 op 10-02-2005 10:16 ]

stp - PSN ID: stp_4


Verwijderd

Topicstarter
Dat klopt. Maar de omzetting kan niet 1-op-1 gebeuren omdat de databases er anders uitzien. Dat is dus een stukje maatwerk en voor mij was het belangrijkste hoe ik de in MySQL nieuw ingevoerde, gewijzigde of verwijderde records kon traceren.

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Kan je niet gewoon een ODBC koppeling gebruiken tussen MySQL en Access? Of is dat niet mogelijk omdat die Access file(s) niet altijd bij die server kunnen? (laptop bijvoorbeeld)

Verwijderd

Topicstarter
Erkens schreef op donderdag 10 februari 2005 @ 10:18:
Of is dat niet mogelijk omdat die Access file(s) niet altijd bij die server kunnen? (laptop bijvoorbeeld)
Dat klopt inderdaad. En wat er bij komt kijken is het verschil in opbouw van de databases. Ik heb hiervoor een apart programma gemaakt in C# wat gebruik maakt van een ODBC koppeling naar Access en een .Net Connector voor de koppeling naar MySQL. Er wordt bijvoorbeeld een tabel uit Access ingelezen, waarna per record de benodigde gegevens worden omgezet naar de juiste velden in de MySQL database. Dat werkt op zich goed. Nu moet ik alleen nog wat schrijven om gegevens de andere kant op te krijgen.

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Kan je niet aan al je tabellen een TIMESTAMP kolom toevoegen, deze wordt automatisch geupdate door MySQL op het moment dat er iets veranderd.
zolang je niet MySQL >4.1 in MAXDB mode hebt

  • stp_4
  • Registratie: Maart 2003
  • Laatst online: 29-07 17:11
In MS SQL heb je daar een DTS-Package voor. Zo kun je volgens mij ook gegevens/tabellen vanuit Access database inlezen en omzetten naar juiste tabellen van SQL db. Zoiets zou je dan toch ook wel moeten hebben voor MySql db?

stp - PSN ID: stp_4


Verwijderd

Topicstarter
Dat DTS klinkt goed. Ik ga daar eens even wat tijd en aandacht aan besteden. Bedankt voor de tips!

Verwijderd

Topicstarter
Ik heb DTS geinstalleerd en moet zeggen het ziet er veelbelovend uit, al is het aardig ingewikkeld. Ik heb nog geen opties kunnen vinden voor bijvoorbeeld het updaten van records. Wat dat betreft ben ik er nog niet uit of het slimmer is me hierin te verdiepen of zelf met C# aan de slag te gaan. 8)7

Is er iemand die ervaring heeft met dit pakket en dan met name met UPDATES e.d.?

[ Voor 13% gewijzigd door Verwijderd op 10-02-2005 12:24 ]


  • stp_4
  • Registratie: Maart 2003
  • Laatst online: 29-07 17:11
Als je updates van de ene db naar de andere db wil transformeren dan zul je in MS SQL gebruik moeten maken van Replication en data van de ene naar de andere met pushen als er een wijziging plaatsvindt. Maar dit is wel erg MS SQL db gericht..

stp - PSN ID: stp_4

Pagina: 1