J'ai un DataTable
qui est généré à partir de la table .xls.Comment mettre à jour une table SQL Server avec des données provenant d'une autre source (DataTable)
Je souhaite stocker ce DataTable
dans une table existante dans la base de données SQL Server. J'utilise SqlBulkCopy
pour stocker des rangées qui ont unique PK.
Le problème est, j'ai également d'autres lignes qui ont même PK comme table SQL Server, mais contiennent cellules ayant une valeur différente par rapport à la table SQL Server.
En bref:
Disons que dans mon DataTable
j'ai une ligne comme ceci:
id (PK) | nom | numéro
005 | abc | 123
006 | lge | 122
Pour mon serveur SQL, j'ai comme ceci;
id (PK) | nom | numéro
004 | cbs | 345
005 | lks | 122
Maintenant vous voyez la ligne peut être téléchargée immédiatement dans SQL Server en utilisant SqlBulkCopy
. D'autre part, la ligne ne peut pas être insérée en l'utilisant car la table du serveur SQL contient une ligne avec PK identique.
Maintenant, j'ai essayé d'extraire manuellement la ligne. Extrayez chaque cellule dans une ArrayList puis générez une instruction UPDATE Table par la suite. Cependant, cette méthode semble être irréalisable car j'ai tellement de lignes à traiter.
Je suis à la recherche d'une meilleure méthode pour atteindre cet objectif.
Toute aide est appréciée.
Quelqu'un peut-il m'aider à formater la table? J'espère que cela n'a pas l'air trop confus. – rofans91
Vous dites que vous voulez une implémentation réussie, mais vous n'expliquez pas * quoi * exactement vous voulez arriver pour 'id' de" 005 ". Voulez-vous remplacer les données dans la table de base de données? Ou simplement l'ignorer à partir du 'DataTable'? –
Je veux l'écraser. – rofans91