Supprimer la colonne d'en-tête à partir de SQL Server résultat de la requête
Je souhaite supprimer l'en-tête de colonne à partir de SQL Server sortie de la requête. J'ai fait la recherche mais pas trouvé de solution. J'ai une question par exemple.
select cc.DepartmentID , cc.Name from HumanResources.Department cc
Lorsque j'exécute cette requête, je suis sortie comme ça.
ID Name
12 Document Control
1 Engineering
16 Executive
14 Facilities and Maintenance
10 Finance
9 Human Resources
Je veux supprimer l'ID et le Nom (en-Tête de Colonne) à partir de la sortie de SQL Server.
Je vais exécuter cette requête par le script pour générer le fichier csv.
Edit:
Lorsque j'exécute la requête par le script, j'ai obtenu le fichier csv de la production et des elle ressemble à ça.
#TYPE System.Data.DataRow
ID Name
Mise à jour:
Je suis en train de monter un script powershell.
$Database = "temp"
$Server = "localhost"
$AttachmentPath = "output.csv"
# Connect to SQL and query data, extract data to SQL Adapter
$SqlQuery = "select cc.DepartmentID , cc.Name from HumanResources.Department cc"
$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = "Data Source=$Server;Initial Catalog=$Database;Integrated Security = True"
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = $SqlQuery
$SqlCmd.Connection = $SqlConnection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$nRecs = $SqlAdapter.Fill($DataSet)
$nRecs | Out-Null
#Populate Hash Table
$objTable = $DataSet.Tables[0]
#Export Hash Table to CSV File
$objTable | Export-CSV $AttachmentPath
Je souhaite supprimer l'en-tête de colonne de la sortie.
Jeu de résultats ne peuvent pas contenir d'informations d'une colonne, il est simplement ajouté par votre client.
Merci pour votre réponse rapide. Lorsque j'exécute la requête par powershell script j'obtiens l'en-tête de colonne. Tout conseiller sur la façon de le supprimer. Vous pouvez voir le résultat ci-dessous.
#TYPE de Système.Les données.DataRow Nom de l'ID
Dans votre requête, il n'y a pas un mot sur la
Peu importe, je suis à l'aide de powershell ou pas. Je suis sortie comme ça.
Merci pour votre réponse rapide. Lorsque j'exécute la requête par powershell script j'obtiens l'en-tête de colonne. Tout conseiller sur la façon de le supprimer. Vous pouvez voir le résultat ci-dessous.
#TYPE de Système.Les données.DataRow Nom de l'ID
Dans votre requête, il n'y a pas un mot sur la
powershell
. Vous devez corriger votre question et ajouter des balises appropriées.Peu importe, je suis à l'aide de powershell ou pas. Je suis sortie comme ça.
OriginalL'auteur Ironic | 2014-04-22
Vous devez vous connecter pour publier un commentaire.
Dans SSMS Sous Outils/Options/les Résultats de la Requête/SQL Server/Résultats de Texte il y a une case à cocher pour Inclure les en-têtes de colonne dans le jeu de résultats'. Similaire pour les résultats sur la grille.
Si vous utilisez l'utilitaire sqlcmd via powershell, vous pouvez utiliser /h-1 pour désactiver les en-têtes.
Exemple (modifié à partir de [TechNet])Un:
travaillera également avec
-h-1
sqlcmd -q "SELECT * from AdventureWorks2012.Personne.Personne" -h-1 sqlcmd -q "SELECT * from AdventureWorks2012.Personne.Personne" /h-1, ces fonctionné pour moi.
OriginalL'auteur Karl Kieninger
Dans management studio à la fenêtre de requête, cliquez droit et sélectionnez les options de Requête. Recherchez Résultat>du Texte à un arbre dans la gauche et découvrez en-têtes de colonnes dans le résultat de l'option set. Je pense Hameau Hakobyan est la droite, c'est le client qui ajouter des en-têtes de colonne.
OriginalL'auteur Surrogate
Remplacer votre dernière ligne
$objTable | Export-CSV $AttachmentPath
avecLa solution est de travailler. Vous voyez que le comportement en raison de la façon dont Excel est rendu. Ouvrez le fichier CSV à l'aide du bloc-notes, et vous verrez comment ils sont correctement disposés. Cela dit, je ne comprends pas pourquoi vous voulez supprimer l'id et le nom de l'en-tête. Si vous les enlevez, à côté de l'entrée deviendra en-tête.Ces volumes contient les propriétés de première ligne(en-tête) et ensuite, les valeurs correspondantes dans les prochaines lignes. Si vous êtes à la recherche pour la façon de voir la nouvelle CSv correctement dans Excel, essayez de Ceci
OriginalL'auteur Nitesh
À l'aide de l'option Enregistrer sous ne devrait pas inclure l'attribut (colonne) les noms.
OriginalL'auteur sticks
dans votre script, pipe (|) de la sortie de la "queue +3 de la commande".
cela permettra de sauter les 2 premières lignes de sortie de SQL.
OriginalL'auteur user4265768
définir cette après la connexion à la base de données
DÉFINIR LA POSITION OFF
OriginalL'auteur Keynes