sql >> Database >  >> RDS >> Sqlserver

SQL Server BCP Export waar komma in SQL-veld

Als een veld dat u exporteert het teken kan bevatten dat u gebruikt om de velden in uw bestand af te bakenen, zijn uw keuzes:

  1. Gebruik een ander scheidingsteken - dit lijkt de gemakkelijkste manier om te gaan. Gebruik gewoon "|" of "~" als uw scheidingsteken. Voer een algemene vervanging van "," naar "|" uit in het formaatbestand met zowat elke teksteditor. Het is niet duidelijk waarom het moeilijk zou zijn om "het hele" bestand te wijzigen. Misschien heeft u een ontvanger van het bestand die door komma's gescheiden moet worden?

  2. Als u komma's als scheidingsteken moet gebruiken, moet u het scheidingsteken voor kolommen wijzigen van komma (,) in aanhalingsteken-komma-aanhalingsteken (","). Om dit te doen, moet u het escape-teken gebruiken om ervoor te zorgen dat het BCP-programma de aanhalingstekens negeert die u als scheidingstekens in het uitvoerbestand wilt gebruiken, zodat het ze niet beschouwt als de aanhalingstekens waarvan het begrijpt dat ze het scheidingsteken in het formaatbestand bevatten . Dus...

In plaats van ","... gebruik... "\",\""

Dit resulteert in het volgende

col1,col2,"col,3",col4

Voor col1 is het scheidingsteken:, om dit in bestandsformaat weer te geven, gebruik:","

Voor col2 is het scheidingsteken:," om dit in bestandsformaat weer te geven, gebruik:","\""

Voor col3 is het scheidingsteken:", om dit in bestandsformaat weer te geven gebruik je:"\","

Voor col4 is het scheidingsteken:, om dit in bestandsformaat weer te geven, gebruik:","

Ik hoop dat dat helpt.



  1. Bevoegdheden toekennen aan verschillende tabellen met een specifiek voorvoegsel

  2. SequelizeConnectionRefusedError:verbind ECONNREFUSED 127.0.0.1:3306

  3. MySQL-resultaten als door komma's gescheiden lijst

  4. voeg een komma (,) toe in Oracle