public QueryResult ExecuteQuery(string queryText) { ISession session = cluster.Connect(); RowSet rowSet = session.Execute(queryText); QueryResult queryResult = new QueryResult(); foreach (var column in rowSet.Columns) { QueryResultColumn queryResultColumn = new QueryResultColumn(column.Name); queryResult.Columns.Add(queryResultColumn); } foreach (var row in rowSet.ToList()) { QueryResultRow queryResultRow = new QueryResultRow(); foreach (var rowValue in row.ToList()) { QueryResultRowValue queryResultRowValue = new QueryResultRowValue(rowValue); queryResultRow.RowValues.Add(queryResultRowValue); } queryResult.Rows.Add(queryResultRow); } return(queryResult); }
private void FillColumnData(QuerySetting querySetting) { for (int i = 0; i < this._OldDataDataTable.Rows.Count; i++) { QueryResultColumn tc = new QueryResultColumn(); tc.Name = this._OldDataDataTable.Rows[i]["ColName"].ToString(); tc.Description = this._OldDataDataTable.Rows[i]["ColDescription"].ToString(); tc.DataType = this.GetDataType(this._OldDataDataTable.Rows[i]["ColType"].ToString()); querySetting.QueryResultTable.Columns.Add(tc); } }
private void CreateResults(IQueryResponse[] response) { results = new LocalQueryResult[response.Length]; for (int i = 0; i < response.Length; i++) { var r = response[i]; var columns = new QueryResultColumn[r.ColumnCount]; for (int j = 0; j < columns.Length; j++) { columns[j] = r.GetColumn(j); } var result = new LocalQueryResult(connection); result.QueryTime = r.QueryTimeMillis; result.Setup(r.ResultId, columns, r.RowCount); result.SetFetchSize(connection.Settings.FetchSize); result.SetMaxRowCount(connection.Settings.MaxFetchSize); // Does the result set contain large objects? We can't cache a // result that contains binary data. bool hasLargeObject = result.HasLargeObject; // If the result row count < 40 then download and store locally in the // result set and dispose the resources on the server. if (!hasLargeObject && result.RowCount < 40) { result.DownloadAndClose(); } else { result.Download(0, System.Math.Min(10, result.RowCount)); } results[i] = result; } }