Can SqlBulkCopy peut-il créer une table, un peu comme un SELECT INTO?Can SqlBulkCopy crée une table à partir d'une sélection Sql
Répondre
Il semble que SqlBulkCopy ne puisse pas créer de tables par lui-même. La table de destination doit être prédéfinie. Dans le cas où la destination a obtenu une identité incrémentielle automatique (int), il suffit d'utiliser un 1 dans l'instruction select dire
SELECT
1,
[ColumnName],
[ColumnName]...
FROM TABLENAME
SQL Server va gérer l'incrément automatique par lui-même.
Que se passe-t-il si le fichier est différent à chaque fois, n'est-il pas possible de créer la table à la volée? – Si8
Je pense que la réponse ci-dessus n'était pas très claire.
Vous devez créer une table avec SQL. Il n'y a pas d'autre moyen. Et si vous avez juste besoin de créer une structure de colonne, il est assez simple si votre source est dans le même serveur, il suffit de le faire:
Select * from source_table into destination_table where 1=2
Si votre source n'est pas même serveur (par exemple, il est Excel ou d'un fichier DBF ou autre), la meilleure chose à faire est de s'y connecter avec ODBC (ou SQL si possible), et lui envoyer:
Select * from source_table where 1=2
puis recueillir résultat dans DataTable. Ensuite, dans la deuxième étape, vous devez créer une procédure stockée sur votre serveur de destination qui prendra cette table comme argument, puis l'insérer dans une nouvelle table.
Un peu plus précisément, essayez ceci pour la procédure SQL: http://www.builderau.com.au/program/sqlserver/soa/Passing-table-valued-parameters-in-SQL-Server-2008/0,339028455,339282577,00.htm
Et créer objet SqlCommnand en C# et ajouter à sa collection de paramètres SqlParameter qui SqlDbType.Structured
Je ne suis pas dans chaque détail, mais espérons que cela peut aider.
- 1. SqlBulkCopy De CSV à SQL Datatable
- 2. SQL CLR SqlBulkCopy from DataTable
- 3. sélection triée à partir d'une seule table
- 4. SqlBulkCopy à partir d'une liste <>
- 5. Créer une nouvelle table à partir d'une commande de sélection
- 6. Limiter l'UC à SqlBulkCopy
- 7. Comment créer une table SQL à partir du résultat d'une autre sélection?
- 8. Can SELECTING FROM une table temporaire vide dans SQL provoque les résultats à vide?
- 9. données de sélection de table à partir de la date
- 10. Sélection de valeurs à partir d'Oracle Table Variable/Array?
- 11. Ajouter du texte lors de l'utilisation de SQLBulkCopy à SQL Server à partir d'Excel
- 12. Sélection SQL à partir du maître - Tableaux de détail
- 13. Sélection de table multi-requête SQL
- 14. Insertion SQL à partir d'une autre table
- 15. sélection « sous Efficacement Maxes » de SQL Table
- 16. SQL Server créant une table temporaire à partir d'une autre table
- 17. Requête sélectionnez une masse d'ID à partir d'une table - SQL
- 18. SQL créer une table et requête à partir de
- 19. Créer une table SQL à partir d'Excel VBA
- 20. BizTalk WCF-SQL Adapter Sélection à partir d'une vue
- 21. Sélection SQL avec plusieurs références à table unique
- 22. SqlBulkCopy problème
- 23. C# et SQL - sous sélection à partir d'un paramètre de table
- 24. erreur insertion de données à l'aide SqlBulkCopy
- 25. Can QT Creator sur linux crée des fichiers .exe
- 26. Sql se joindre à une table
- 27. sqlbulkcopy mem. gestion
- 28. Date Heure crée à partir du format
- 29. JAXB crée une carte à partir de XSD
- 30. Création automatique d'un schéma sur SQL Server à l'aide de SQLBulkCopy dans .NET
Je souhaite déplacer des données d'une base de données Oracle vers une base de données SQL Server, et j'aimerais que les tables de destination soient créées automatiquement, est-ce possible en utilisant SqlBulkCopy? –