コード例 #1
0
ファイル: cCommand.cs プロジェクト: shkumat/MyTypes
 public bool NextRecordSet()
 {
     if (DataReader == null)
     {
         return(false);
     }
     return(DataReader.NextResult());
 }
コード例 #2
0
        public DataSet FromIRecordReader(IRecordsReader recordsReader)
        {
            // Get the internal RawDataReader (obsolete)
            System.Data.SqlClient.SqlDataReader reader
                = ((umbraco.DataLayer.SqlHelpers.SqlServer.SqlServerDataReader)recordsReader).RawDataReader;
            DataSet dataSet = new DataSet();

            do
            {
                DataTable dataTable   = new DataTable();
                DataTable schemaTable = reader.GetSchemaTable();

                if (schemaTable != null)
                {
                    // A query returning records was executed
                    foreach (DataRow dataRow in schemaTable.Rows)
                    {
                        // Create a column name that is unique in the data table
                        string columnName = (string)dataRow["ColumnName"];
                        // Add the column definition to the data table
                        DataColumn column = new DataColumn(columnName, (Type)dataRow["DataType"]);
                        dataTable.Columns.Add(column);
                    }

                    dataSet.Tables.Add(dataTable);

                    // Fill the data table we just created
                    while (reader.Read())
                    {
                        DataRow dataRow = dataTable.NewRow();
                        for (int i = 0; i < reader.FieldCount; i++)
                        {
                            dataRow[i] = reader.GetValue(i);
                        }
                        dataTable.Rows.Add(dataRow);
                    }
                }
                else
                {
                    // No records were returned, return number of rows affected
                    dataTable.Columns.Add(new DataColumn("RowsAffected"));
                    dataSet.Tables.Add(dataTable);
                    DataRow rowsAffectedRow = dataTable.NewRow();
                    rowsAffectedRow[0] = reader.RecordsAffected;
                    dataTable.Rows.Add(rowsAffectedRow);
                }
            } // Go trough all result sets
            while (reader.NextResult());

            // Close the data reader so the underlying connection is closed
            recordsReader.Close();

            return(dataSet);
        }
コード例 #3
0
 public bool NextResult()
 {
     try
     {
         return(_reader.NextResult());
     }
     catch (Exception ex)
     {
         _errorReporter.ReportError(ex, "Failed to read next SQL result set");
         _hasErrors = true;
         return(false);
     }
 }
コード例 #4
0
ファイル: DataStream.cs プロジェクト: ajay74/Cdb
        void StreamData()
        {
            _waitHandle.WaitOne();

            while (_stream.HasRows)
            {
                DataTable resultSet = _stream.GetSchemaTable();
                object[]  values    = new object[_stream.FieldCount - 1];

                while (_stream.Read())
                {
                    _stream.GetValues(values);
                    resultSet.Rows.Add(values);
                    _waitHandle.WaitOne(100);
                }

                _dataReady = true;
                _resultSets.Add(resultSet);
                _stream.NextResult();
            }

            _dataReady = true;
        }
コード例 #5
0
        public string GetSchoolYears()
        {
            string result = string.Empty;

            try
            {
                ArrayList years = new ArrayList();
                using (System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["PSCPortalConnectionString"].ConnectionString))
                {
                    con.Open();
                    System.Data.SqlClient.SqlCommand com = new System.Data.SqlClient.SqlCommand();
                    com.Connection  = con;
                    com.CommandText = @"create table #temp
	                                        (
		                                        stt int identity(0,1),
		                                        YearId int
	                                        )  
                                            
	                                        insert #temp(YearId)
	                                        select YearId from YearTHPT
	                                        order by YearId DESC

	                                        declare @index int
	                                        set @index = 0
                                            
	                                        declare @max int
	                                        set @max = (select max(stt) from #temp)

	                                        declare @temp int

	                                        while (@index <= @max)
	                                        begin
		                                        set @temp = (select YearId from #temp where @index=stt)

		                                        select YearId
		                                        from YearTHPT
		                                        where YearId=@temp

		                                        select TestDayId
		                                        from TestDateTHPT
		                                        where YearId=@temp		

		                                        set @index = @index+1
	                                        end

	                                        Drop table #temp"    ;
                    com.CommandType = CommandType.Text;
                    using (System.Data.SqlClient.SqlDataReader reader = com.ExecuteReader())
                    {
                        int           resultIndex = 0;//chi muc cua NextResult, dnag o vi tri bang thu 0;
                        TestDayObject year        = new TestDayObject();
                        do
                        {
                            while (reader.Read())
                            {
                                if (resultIndex % 2 == 0)//neu dang nhay den bang chua menu cha thi add no vao danh sach cha, va gan menu cha hien hanh
                                {
                                    year = new TestDayObject {
                                        year = reader["YearId"].ToString(), testDays = new ArrayList()
                                    };
                                    years.Add(year);
                                }
                                else//nguoc lai, add no vao menu cha cua no
                                {
                                    year.testDays.Add(reader["TestDayId"].ToString());
                                }
                            }

                            resultIndex++;
                        } while (reader.NextResult());
                    }
                }
                System.Web.Script.Serialization.JavaScriptSerializer serialize = new System.Web.Script.Serialization.JavaScriptSerializer();
                result = serialize.Serialize(years);
            }
            catch (Exception ex)
            {
                string err = ex.ToString();
            }
            return(result);
        }