IEnumerable <ITreeNode> ITreeNode.GetChildren(bool refresh) { var commandText = $@" select s.TABLE_OWNER, s.TABLE_NAME from SYS.ALL_SYNONYMS s where s.OWNER = '{_schema.Name}' and s.SYNONYM_NAME = '{_name}'" ; var executor = _schema.SchemasNode.Connection.CreateCommandExecutor(); var dataTable = executor.ExecuteDataTable(new ExecuteReaderRequest(commandText)); var dataRow = dataTable.Rows[0]; var schemaName = (string)dataRow["TABLE_OWNER"]; var schemaNode = new SchemaNode(_schema.SchemasNode, schemaName); var tableNode = new TableNode(schemaNode, (string)dataRow["TABLE_NAME"], true); return(new ITreeNode[] { tableNode }); }
public IEnumerable <ITreeNode> GetChildren(bool refresh) { var folder = DataCommanderApplication.Instance.ApplicationData.CurrentType; var key = _schema.SchemasNode.Connection.DataSource + "." + _schema.Name; string[] tables; var contains = folder.Attributes.TryGetAttributeValue(key, out tables); if (!contains || refresh) { var commandText = "select table_name from all_tables where owner = '{0}' order by table_name"; commandText = string.Format(commandText, _schema.Name); var command = new OracleCommand(commandText, _schema.SchemasNode.Connection); command.FetchSize = 256 * 1024; var dataTable = command.ExecuteDataTable(CancellationToken.None); var count = dataTable.Rows.Count; tables = new string[count]; for (var i = 0; i < count; i++) { var name = (string)dataTable.Rows[i][0]; tables[i] = name; } folder.Attributes.SetAttributeValue(key, tables); } var treeNodes = new ITreeNode[tables.Length]; for (var i = 0; i < tables.Length; i++) { treeNodes[i] = new TableNode(_schema, tables[i], false); } return(treeNodes); }
public TriggerCollectionNode(TableNode tableNode) { _table = tableNode; }
public IndexeCollectionNode(TableNode tableNode) { _table = tableNode; }