Cmdlets for Basecamp

Build 20.0.7587

SELECT INTO Statements

You can use the SELECT INTO statement to export formatted data to a file.

Data Export with an SQL Query

The following query exports data into a file formatted in comma-separated values (CSV):

C#

String connectionString = "AccountId=1234567;Schema=V3;ProjectId=abcd1234";

using (BasecampConnection connection = new BasecampConnection(connectionString)) {
  BasecampCommand cmd = new BasecampCommand("SELECT Id, Name INTO [csv://Projects.txt] FROM [Projects] WHERE Id = 'MyId' ", connection);
  int rowsAffected = cmd.ExecuteNonQuery();
} 

VB.NET

Dim connectionString As [String] = "AccountId=1234567;Schema=V3;ProjectId=abcd1234" 

Using connection As New BasecampConnection(connectionString)
  Dim cmd As New BasecampCommand("SELECT Id, Name INTO [csv://Projects.txt] FROM [Projects] WHERE Id = 'MyId'", connection)
  Dim rowsAffected As Integer = cmd.ExecuteNonQuery()
End Using
You can specify other file formats in the URI. The following example exports tab-separated values:

C#

String connectionString = "AccountId=1234567;Schema=V3;ProjectId=abcd1234";

using (BasecampConnection connection = new BasecampConnection(connectionString)) {
  BasecampCommand cmd = new BasecampCommand("SELECT * INTO [Projects] IN [csv://filename=c:/Projects.csv;delimiter=tab] FROM [Projects] WHERE Id = 'MyId'", connection);
  int rowsAffected = cmd.ExecuteNonQuery();
} 

VB.NET

Dim connectionString As [String] = "AccountId=1234567;Schema=V3;ProjectId=abcd1234" 

Using connection As New BasecampConnection(connectionString)
  Dim cmd As New BasecampCommand("SELECT * INTO [Projects] IN [csv://filename=c:/Projects.csv;delimiter=tab] FROM [Projects] WHERE Id = 'MyId'", connection)
  Dim rowsAffected As Integer = cmd.ExecuteNonQuery()
End Using

Copyright (c) 2020 CData Software, Inc. - All rights reserved.
Build 20.0.7587