Gefaalde Import in MS SQL Server

Allereerst dank voor de duidelijke gebruiksaanwijzing, en eenvoudige manier van verwerken (dmv. scripts)

Ik wilde graag een dump maken naar MS SQL Server 2000
( server is local, Data direcory is op C:\ schijf geplaatst. en
gebruik de CDFoongids 2005 Uitgave 1 )
De database creeeren was geen probleem. ( zeker niet met het sql script :wink: )

Het command venster en de opdrachtregel gaf ook ogenschijnlijk geen problemen. Hieronder de regels in het command venster.

/*************/
Microsoft Windows XP [Version 5.1.2600]
© Copyright 1985-2001 Microsoft Corp.

C:>cd foondump

C:\Foondump>fd05-mssql “c:\foon05\Data” white
1> 2> 3> 4> 5> 1> 2> 3> 4> 1> 2> 3> 4> 1> 2> 3> 4> 1> 2> 3> 4> 1> 2> 3> 4> 1> 2>
3> 4> 1> 2> 3> 4> 1> 2> 3> 4> 5> 6> 7> 8> 9> 1> 2> 3> 4> 5> 6> 1> 2> 3> 4> 5> 6

7> 8> 9> 1> 2> 3> 4> 5> 6> 7> 8> 1> 2> 3> 4> 5> 6> 7> 1> 2> 3> 4> 5> 6> 7> 8>
9> 10> 11> 12> 13> 14> 15> 16> 1> 2> 3> 4> 5> 6> 7> 8> 9> 10> 11> 1> 2> 3> 4> 5>
6> 7> 8> 9> 1> 2> 3> 4> 5> 6> 7> 8> 9> 1> Starting Foondump
Foondump v5.05 - http://www.foondump.nl/ - Build date Jun 1 2005 19:54:30

Klaar met dumpen. 5999754 vermeldingen gedumpt in 207 seconden.
Importing CSV file category
Importing CSV file subscriber
Importing CSV file info
Importing CSV file phonenumber
Creating indexes
1> 2> 3> 1> 2> 1> 2> 3> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 1> 2> 3> 4> 5> (0 rows aff
ected)
1> 2> (0 rows affected)
1> 2> (0 rows affected)
1> 2> (0 rows affected)
1> 2> 3> C:\Foondump>
/*************/

Er zijn geen foutmeldingen gekomen, maar de tabellen

  • white_city
  • white_phonenumber
  • white_street
  • white_subscriber
    zijn allen leeg. ( de overige zijn wel compleet)

Waar het op lijkt is dat de batch import mislukt op een PK_ conflict.
( dan krijg je een rollback, en blijft de tabel leeg…)

Valt dit te ondervangen?
of is er meer info nodig?

uhm… Bekijk net het log van white_phonenumber en vermoedens waren juist…

/*********************/
SQLState = 23000, NativeError = 2627
Error = [Microsoft][ODBC SQL Server Driver][SQL Server]Violation of PRIMARY KEY constraint ‘PK_White_PhoneNumber’. Cannot insert duplicate key in object ‘white_phonenumber’.
SQLState = 01000, NativeError = 3621
Warning = [Microsoft][ODBC SQL Server Driver][SQL Server]The statement has been terminated.

BCP copy in failed
/********************/

Door de PK te verwijderen en fd05-mssql opnieuw te draaien importeerd hij wel, maar staan er dus duplicaten in…

Is dit te ondervangen?
dedupliceren is ook mogelijk, maar wellicht is het simpeler…

Colin

De white_phonenumber heeft inderdaad dubbelen. MySql negeert deze terwijl MSSQL dit niet doet. Met RGJ al een keer contact gehad of dit wellicht tijdens het aanmaken van de dump gedaan kan worden.

Het is inderdaad op te lossen door de primary key weg te halen. Aangezien ikzelf graag uniek een record wel kunnen benaderen, heb ik het opgelost door een extra veld (RecId, numeric(18,0) identity). Dit veld heb ik als key genomen. Door het identity veld krijgt de key een unieke waarde en hoef je de bijbehorende fmt-file niet aan te passen.

E.e.a is opgelost in v5.05b
Bedankt et!

@rgj
v5.05b importeert pink idd perfect!

Alleen in het script white_tables.sql dient in de tabel subscribers de kolom phonenumber ook op NULL staan.

Dan gaat white ook helemaal goed.

Moet zeggen dat jullie een perfecte tool ontwikkeld hebben!
ook de support is iets waar een hoop mensen een voorbeeld aan kunnen nemen.

Thanx…

Colin