OneDrive Connector
Documentation
Version: 8
Documentation

EndPoint Read CSV File (Generic)


Parameters

Parameter Label Required Options Description
DriveId Drive Id / Shared Folder YES Specify a drive
FileId File Id or Path (e.g. root:/somefolder/myfile.xyz: ) - Max 1000 Listed YES Specify a File Id or Path. Syntax: [{file-id}] -OR- [root:/{file-path}:] (Example: root:/folder/subfolder/myfile.xyz: )
GroupOrUserId Default Group or User Id (additional Scopes needed to list - If fails enter manually) NO
Option Value
My self (Not Valid for Application Credentials)
For any group /groups/ENTER-GROUP-EMAIL-OR-ID
For any user /users/ENTER-USER-EMAIL-OR-ID
To list all users and groups from your organizations you need additional scopes. See connection UI - Choose User.Read.All and Group.Read.All Scopes and regenerate token. You can manually type value too if you know Group or User Id. Format is /users/{id} OR /groups/{id}
SearchType Search Type (For UI Only - Default=Recursive - i.e. Blank) NO
Option Value
Recursive All Files (Keep Blank) - For User Creds Only
Non-Recursive / Children - All Files children
Recursive *.xlsx Files - For User Creds Only search(q='.xls')
Recursive *.csv Files - For User Creds Only search(q='.csv')
Recursive *.json Files - For User Creds Only search(q='.json')
Recursive Custom Extension Files - For User Creds Only search(q='.myext')
If you do not wish to see files from child folders then use Non-Recursive option. Recursive option has certain limitations (e.g. Only indexed files will appear so it takes time to show up in the list). If you do not see some files listed in the output then use Non-Recursive option (must specify Parent Folder Path in SearchPath property).
SearchPath Search Folder (For UI Only - Helps to narrow down File Selection DropDown) - Max 200 Listed NO This parameter is only for UI. Select this to narrow down File List Dropdown. Select Search Folder first and then select File List dropdown to see new File list (found under this selected folder).

Output Columns

Label Data Type (SSIS) Data Type (SQL) Length Raw Description
There are no Static columns defined for this endpoint. This endpoint detects columns dynamically at runtime.

Input Columns

Label Data Type (SSIS) Data Type (SQL) Length Raw Description
There are no Static columns defined for this endpoint. This endpoint detects columns dynamically at runtime.

Examples

SSIS

Use OneDrive Connector in API Source component to read data or in API Destination component to read/write data:

Read CSV File (Generic) using API Source

OneDrive
Read CSV File (Generic)
SSIS API Source - Read from table or endpoint

Read CSV File (Generic) using API Destination

OneDrive
Read CSV File (Generic)
SSIS API Destination - Access table or endpoint

ODBC application

Use these SQL queries in your ODBC application data source:

Read CSV File from OneDrive (Parse Rows and Columns without downloading)

This example shows how to read a CSV file from OneDrive without downloading on the Disk (Streaming approach).

SELECT * from get_csv_file
WITH(
	  DriveId='b!0zqXLXXJh0uUMzl-JXAd9Ztngc-5utVDqRyD2lKpD2535-11HLQTR5z4hOzmA7Q0'
	, FileId='root:/dump.csv:'
    --, FileId='01N3NI7YRUO2UHV2TUMBGJ4H4QQMWCG6DA'			
	--, FileId='root:/myfolder/dump.csv:'	
	--, ColumnDelimiter=',' --{LF}, {TAB}, | , \x0009 ... default is comma (",")
	--, HasColumnHeaderRow=0 --set for header less file
	--, FileId='root:/myfolder/test_out.csv.gz:'
	--, FileCompressionType='GZip' --None, GZip, Zip
)         

--SELECT * FROM get_csv_file WITH(FileId='01N3NI7YQA6I2F7YAXBBCZCLLPTRFLANAX')
--SELECT * FROM get_csv_file WITH(FileId='root:/dump.csv:')
--SELECT * FROM get_csv_file WITH(FileId='root:/Documents/dump.csv:')
--SELECT * FROM get_csv_file WITH(FileId='root:/Documents/SubFolder/dump.csv:')

Read Zip/Gzip Compressed CSV File from OneDrive (Parse Rows and Columns without downloading)

This example shows how to read a compressed CSV file (Zip or Gzip) from OneDrive without downloading on the Disk (Streaming approach).

SELECT * from get_csv_file
WITH(
	  DriveId='b!0zqXLXXJh0uUMzl-JXAd9Ztngc-5utVDqRyD2lKpD2535-11HLQTR5z4hOzmA7Q0'
	, FileId='root:/myfolder/dump.csv.zip:'
  --, FileId='01N3NI7YRUO2UHV2TUMBGJ4H4QQMWCG6DA'		
  --, ColumnDelimiter=',' --{LF}, {TAB}, | , \x0009 ... default is comma (",")
  --, HasColumnHeaderRow=0 --set for header less file
  --, FileId='root:/MyFolder/dump.csv.gz:'
    , FileCompressionType='Zip' --None, GZip, Zip
)

SQL Server

Use these SQL queries in SQL Server after you create a data source in Data Gateway:

Read CSV File from OneDrive (Parse Rows and Columns without downloading)

This example shows how to read a CSV file from OneDrive without downloading on the Disk (Streaming approach).

DECLARE @MyQuery NVARCHAR(MAX) = 'SELECT * from get_csv_file
WITH(
	  DriveId=''b!0zqXLXXJh0uUMzl-JXAd9Ztngc-5utVDqRyD2lKpD2535-11HLQTR5z4hOzmA7Q0''
	, FileId=''root:/dump.csv:''
    --, FileId=''01N3NI7YRUO2UHV2TUMBGJ4H4QQMWCG6DA''			
	--, FileId=''root:/myfolder/dump.csv:''	
	--, ColumnDelimiter='','' --{LF}, {TAB}, | , \x0009 ... default is comma (",")
	--, HasColumnHeaderRow=0 --set for header less file
	--, FileId=''root:/myfolder/test_out.csv.gz:''
	--, FileCompressionType=''GZip'' --None, GZip, Zip
)         

--SELECT * FROM get_csv_file WITH(FileId=''01N3NI7YQA6I2F7YAXBBCZCLLPTRFLANAX'')
--SELECT * FROM get_csv_file WITH(FileId=''root:/dump.csv:'')
--SELECT * FROM get_csv_file WITH(FileId=''root:/Documents/dump.csv:'')
--SELECT * FROM get_csv_file WITH(FileId=''root:/Documents/SubFolder/dump.csv:'')';

EXEC (@MyQuery) AT [LINKED_SERVER_TO_ONEDRIVE_IN_DATA_GATEWAY];

Read Zip/Gzip Compressed CSV File from OneDrive (Parse Rows and Columns without downloading)

This example shows how to read a compressed CSV file (Zip or Gzip) from OneDrive without downloading on the Disk (Streaming approach).

DECLARE @MyQuery NVARCHAR(MAX) = 'SELECT * from get_csv_file
WITH(
	  DriveId=''b!0zqXLXXJh0uUMzl-JXAd9Ztngc-5utVDqRyD2lKpD2535-11HLQTR5z4hOzmA7Q0''
	, FileId=''root:/myfolder/dump.csv.zip:''
  --, FileId=''01N3NI7YRUO2UHV2TUMBGJ4H4QQMWCG6DA''		
  --, ColumnDelimiter='','' --{LF}, {TAB}, | , \x0009 ... default is comma (",")
  --, HasColumnHeaderRow=0 --set for header less file
  --, FileId=''root:/MyFolder/dump.csv.gz:''
    , FileCompressionType=''Zip'' --None, GZip, Zip
)';

EXEC (@MyQuery) AT [LINKED_SERVER_TO_ONEDRIVE_IN_DATA_GATEWAY];