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):
SELECT Id, [address-city] INTO [csv://Patient.txt] FROM [Patient] WHERE [name-use] = 'Bob'You can specify other formats in the file URI. The possible delimiters are tab, semicolon, and comma with the default being a comma. The following example exports tab-separated values:
SELECT Id, [address-city] INTO [csv://Patient.txt;delimiter=tab] FROM [Patient] WHERE [name-use] = 'Bob'
C#
String connectionString = "URL=http://test.fhir.org/r4b/;ConnectionType=Generic;ContentType=JSON;AuthScheme=None;"; using (FHIRConnection connection = new FHIRConnection(connectionString)) { FHIRCommand cmd = new FHIRCommand("SELECT Id, [address-city] INTO [csv://Patient.txt] FROM [Patient] WHERE [name-use] = 'Bob' ", connection); int rowsAffected = cmd.ExecuteNonQuery(); }
VB.NET
Dim connectionString As [String] = "URL=http://test.fhir.org/r4b/;ConnectionType=Generic;ContentType=JSON;AuthScheme=None;" Using connection As New FHIRConnection(connectionString) Dim cmd As New FHIRCommand("SELECT Id, [address-city] INTO [csv://Patient.txt] FROM [Patient] WHERE [name-use] = 'Bob'", connection) Dim rowsAffected As Integer = cmd.ExecuteNonQuery() End UsingYou can specify other file formats in the URI. The following example exports tab-separated values:
C#
String connectionString = "URL=http://test.fhir.org/r4b/;ConnectionType=Generic;ContentType=JSON;AuthScheme=None;"; using (FHIRConnection connection = new FHIRConnection(connectionString)) { FHIRCommand cmd = new FHIRCommand("SELECT * INTO [Patient] IN [csv://filename=c:/Patient.csv;delimiter=tab] FROM [Patient] WHERE [name-use] = 'Bob'", connection); int rowsAffected = cmd.ExecuteNonQuery(); }
VB.NET
Dim connectionString As [String] = "URL=http://test.fhir.org/r4b/;ConnectionType=Generic;ContentType=JSON;AuthScheme=None;" Using connection As New FHIRConnection(connectionString) Dim cmd As New FHIRCommand("SELECT * INTO [Patient] IN [csv://filename=c:/Patient.csv;delimiter=tab] FROM [Patient] WHERE [name-use] = 'Bob'", connection) Dim rowsAffected As Integer = cmd.ExecuteNonQuery() End Using