Retrieving SQL Connection Data
In Microsoft Excel, connect to a database by:
- Clicking the Data menu and selecting From Other Sources followed by From SQL Server.
- Then select Data followed by Connections.
- Use the Connections wizard to connect to the database and create a database query.
Showing the SQL connection option in Microsoft Excel
Aspose.Cells provides the Workbook.getDataConnections() method for retrieving external connections. It returns a collection of ExternalConnection objects in the workbook.
If the ExternalConnection object contains SQL connection data, it can be type-caste into a DBConnection object its properties used to retrieve database command, command type, connection description, connection info, credentials, and so on.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(RetrieveSQLConnectionData.class); | |
// Create a workbook object from source file | |
Workbook workbook = new Workbook(dataDir + "connection.xlsx"); | |
// Access the external collections | |
ExternalConnectionCollection connections = workbook.getDataConnections(); | |
int connectionCount = connections.getCount(); | |
ExternalConnection connection = null; | |
for (int i = 0; i < connectionCount; i++) { | |
connection = connections.get(i); | |
// Check if the Connection is DBConnection, then retrieve its various properties | |
if (connection instanceof DBConnection) { | |
DBConnection dbConn = (DBConnection) connection; | |
// Retrieve DB Connection Command | |
System.out.println("Command: " + dbConn.getCommand()); | |
// Retrieve DB Connection Command Type | |
System.out.println("Command Type: " + dbConn.getCommandType()); | |
// Retrieve DB Connection Description | |
System.out.println("Description: " + dbConn.getConnectionDescription()); | |
// Retrieve DB Connection ID | |
System.out.println("Id: " + dbConn.getConnectionId()); | |
// Retrieve DB Connection Info | |
System.out.println("Info: " + dbConn.getConnectionInfo()); | |
// Retrieve DB Connection Credentials | |
System.out.println("Credentials: " + dbConn.getCredentials()); | |
// Retrieve DB Connection Name | |
System.out.println("Name: " + dbConn.getName()); | |
// Retrieve DB Connection ODC File | |
System.out.println("OdcFile: " + dbConn.getOdcFile()); | |
// Retrieve DB Connection Source File | |
System.out.println("Source file: " + dbConn.getSourceFile()); | |
// Retrieve DB Connection Type | |
System.out.println("Type: " + dbConn.getType()); | |
// Retrieve DB Connection Parameters Collection | |
ConnectionParameterCollection parameterCollection = dbConn.getParameters(); | |
int paramCount = parameterCollection.getCount(); | |
// Iterate the Parameter Collection | |
for (int j = 0; j < paramCount; j++) { | |
ConnectionParameter param = parameterCollection.get(j); | |
// Retrieve Parameter Cell Reference | |
System.out.println("Cell reference: " + param.getCellReference()); | |
// Retrieve Parameter Name | |
System.out.println("Parameter name: " + param.getName()); | |
// Retrieve Parameter Prompt | |
System.out.println("Prompt: " + param.getPrompt()); | |
// Retrieve Parameter SQL Type | |
System.out.println("SQL Type: " + param.getSqlType()); | |
// Retrieve Parameter Type | |
System.out.println("Param Type: " + param.getType()); | |
// Retrieve Parameter Value | |
System.out.println("Param Value: " + param.getValue()); | |
} // End for | |
} // End if | |
} // End for | |