/// <summary> /// Executes our example using an <see cref="AceQLConnection"/> /// </summary> /// <param name="connection"></param> private static async Task ExecuteExample(AceQLConnection connection) { await connection.OpenAsync(); AceQLConsole.WriteLine("host: " + connection.ConnectionString); AceQLConsole.WriteLine("aceQLConnection.GetClientVersion(): " + AceQLConnection.GetClientVersion()); AceQLConsole.WriteLine("aceQLConnection.GetServerVersion(): " + await connection.GetServerVersionAsync()); AceQLConsole.WriteLine("AceQL local folder: "); AceQLConsole.WriteLine(await AceQLConnection.GetAceQLLocalFolderAsync()); RemoteDatabaseMetaData remoteDatabaseMetaData = connection.GetRemoteDatabaseMetaData(); string userPath = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile); string schemaFilePath = userPath + "\\db_schema.out.html"; // Download Schema in HTML format: using (Stream stream = await remoteDatabaseMetaData.DbSchemaDownloadAsync()) { using (var fileStream = File.Create(schemaFilePath)) { stream.CopyTo(fileStream); } } System.Diagnostics.Process.Start(schemaFilePath); AceQLConsole.WriteLine("Creating schema done."); JdbcDatabaseMetaData jdbcDatabaseMetaData = await remoteDatabaseMetaData.GetJdbcDatabaseMetaDataAsync(); AceQLConsole.WriteLine("Major Version: " + jdbcDatabaseMetaData.GetJDBCMajorVersion); AceQLConsole.WriteLine("Minor Version: " + jdbcDatabaseMetaData.GetJDBCMinorVersion); AceQLConsole.WriteLine("IsReadOnly : " + jdbcDatabaseMetaData.IsReadOnly); AceQLConsole.WriteLine("JdbcDatabaseMetaData: " + jdbcDatabaseMetaData.ToString().Substring(1, 200)); AceQLConsole.WriteLine(); AceQLConsole.WriteLine("Get the table names:"); List <String> tableNames = await remoteDatabaseMetaData.GetTableNamesAsync(); AceQLConsole.WriteLine("Print the column details of each table:"); foreach (String tableName in tableNames) { Table table = await remoteDatabaseMetaData.GetTableAsync(tableName); AceQLConsole.WriteLine("Columns:"); foreach (Column column in table.Columns) { AceQLConsole.WriteLine(column.ToString()); } } AceQLConsole.WriteLine(); String name = "orderlog"; Table tableOrderlog = await remoteDatabaseMetaData.GetTableAsync(name); AceQLConsole.WriteLine("table name: " + tableOrderlog.TableName); AceQLConsole.WriteLine("table keys: "); List <PrimaryKey> primakeys = tableOrderlog.PrimaryKeys; foreach (PrimaryKey primaryKey in primakeys) { AceQLConsole.WriteLine("==> primaryKey: " + primaryKey); } AceQLConsole.WriteLine(); AceQLConsole.WriteLine("Full table: " + tableOrderlog); AceQLConsole.WriteLine(); AceQLConsole.WriteLine("Done."); }
/// <summary> /// Initializes a new instance of the <see cref="JdbcDatabaseMetaDataDto"/> class. /// </summary> /// <param name="jdbcDatabaseMetaData">The JDBC database meta data.</param> public JdbcDatabaseMetaDataDto(JdbcDatabaseMetaData jdbcDatabaseMetaData) { this.jdbcDatabaseMetaData = jdbcDatabaseMetaData; }