using NewLife.Studio.Core.DTOs;
namespace NewLife.Studio.Data;
/// <summary>数据库会话接口</summary>
public interface IDbSession : IDisposable
{
string SessionId { get; }
ConnectionInfo Connection { get; }
bool IsOpen { get; }
Task<TableInfo[]> GetTablesAsync(CancellationToken ct = default);
Task<ColumnInfo[]> GetColumnsAsync(string tableName, CancellationToken ct = default);
Task<QueryResult> ExecuteQueryAsync(QueryRequest request, CancellationToken ct = default);
Task CloseAsync();
}
|