当前位置: 首页>>代码示例>>C#>>正文


C# SqlCommand.GetReader方法代码示例

本文整理汇总了C#中System.Data.SqlClient.SqlCommand.GetReader方法的典型用法代码示例。如果您正苦于以下问题:C# SqlCommand.GetReader方法的具体用法?C# SqlCommand.GetReader怎么用?C# SqlCommand.GetReader使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Data.SqlClient.SqlCommand的用法示例。


在下文中一共展示了SqlCommand.GetReader方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: LoadExtendedPropertyData

 private void LoadExtendedPropertyData()
 {
     if (ExtendedProperties == null)
     {
         ExtendedProperties = new DataTable();
         var cmdExtProps = new SqlCommand(EXTENDED_PROPERTIES_ALL);
         ExtendedProperties.Load(cmdExtProps.GetReader());
     }
 }
开发者ID:stevesloka,项目名称:bvcms,代码行数:9,代码来源:SqlDataProvider.cs

示例2: FillTableSchema

        public void FillTableSchema(Table tbl, TableType tableType)
        {
            TableColumnCollection columns = new TableColumnCollection();
            DataSet dsColumns;

            tbl.ForeignKeys = new ForeignKeyCollection();

            if (tableType == TableType.Function)
            {
                if (dsColumns2.Tables[Name] == null)
                {
                    var cmdColumns = new SqlCommand(ROUTINE_COLUMN_SQL_ALL);
                    var dt = new DataTable(Name);
                    dt.Load(cmdColumns.GetReader());
                    dsColumns2.Tables.Add(dt);
                }
                dsColumns = dsColumns2;
            }
            else
            {
                if (dsColumns1.Tables[Name] == null)
                {
                    var cmdColumns = new SqlCommand(TABLE_COLUMN_SQL_ALL);
                    var dt = new DataTable(Name);
                    dt.Load(cmdColumns.GetReader());
                    dsColumns1.Tables.Add(dt);
                }
                dsColumns = dsColumns1;
            }

            DataRow[] drColumns = dsColumns.Tables[Name].Select("TableName ='" + tbl.Name + "'", "OrdinalPosition ASC");

            for (int i = 0; i < drColumns.Length; i++)
            {
                TableColumn column = new TableColumn(tbl);
                column.ColumnName = drColumns[i][SqlSchemaVariable.COLUMN_NAME].ToString();
                column.NativeDataType = drColumns[i][SqlSchemaVariable.DATA_TYPE].ToString();
                if (column.NativeDataType == "numeric")
                    column.NativeDataType = string.Format("Decimal({0},{1})", drColumns[i]["precision"], drColumns[i]["scale"]);
                column.DataType = GetDbType(column.NativeDataType);
                if (drColumns[i][SqlSchemaVariable.COLUMN_DEFAULT] != DBNull.Value)
                {
                    string defaultSetting = drColumns[i][SqlSchemaVariable.COLUMN_DEFAULT].ToString().Trim();
                    if (defaultSetting.ToLower().IndexOf("newsequentialid()") > -1)
                        column.DefaultSetting = SqlSchemaVariable.DEFAULT;
                    else
                        column.DefaultSetting = defaultSetting;
                }
                column.AutoIncrement = Convert.ToBoolean(drColumns[i][SqlSchemaVariable.IS_IDENTITY]);
                int maxLength;
                int.TryParse(drColumns[i][SqlSchemaVariable.MAX_LENGTH].ToString(), out maxLength);
                column.MaxLength = maxLength;
                if (maxLength > 0)
                    column.NativeDataType += "(" + maxLength + ")";
                column.IsNullable = drColumns[i][SqlSchemaVariable.IS_NULLABLE].ToString() == "YES";
                bool isComputed = (drColumns[i][SqlSchemaVariable.IS_COMPUTED].ToString() == "1");
                column.IsReadOnly = (column.NativeDataType == "timestamp" || isComputed);
                columns.Add(column);
                tbl.SchemaName = drColumns[i]["Owner"].ToString();
            }
            tbl.Columns = columns;

            if (dsIndex.Tables[Name] == null)
            {
                var cmdIndex = new SqlCommand(INDEX_SQL_ALL);
                DataTable dt = new DataTable(Name);
                dt.Load(cmdIndex.GetReader());
                dsIndex.Tables.Add(dt);
            }

            DataRow[] drIndexes = dsIndex.Tables[Name].Select("TableName ='" + tbl.Name + "'");
            for (int i = 0; i < drIndexes.Length; i++)
            {
                string colName = drIndexes[i][SqlSchemaVariable.COLUMN_NAME].ToString();
                string constraintType = drIndexes[i][SqlSchemaVariable.CONSTRAINT_TYPE].ToString();
                TableColumn column = columns.GetColumn(colName);

                if (Utility.IsMatch(constraintType, SqlSchemaVariable.PRIMARY_KEY))
                    column.IsPrimaryKey = true;
                else if (Utility.IsMatch(constraintType, SqlSchemaVariable.FOREIGN_KEY))
                    column.IsForeignKey = true;
                //HACK: Allow second pass naming adjust based on whether a column is keyed
                column.ColumnName = column.ColumnName;
            }

            if (dtFKR == null)
            {
                var cmdFKR = new SqlCommand(FOREIGN_KEY_RELATIONSHIPS);
                dtFKR = new DataTable();
                dtFKR.Load(cmdFKR.GetReader());

                var cmdFK = new SqlCommand(FOREIGN_KEYS);
                dtFK = new DataTable();
                dtFK.Load(cmdFK.GetReader());
            }

            DataRow[] drfkr;
            drfkr = dtFKR.Select("PkTable ='" + tbl.Name + "'");
            for (int i = 0; i < drfkr.Length; i++)
            {
//.........这里部分代码省略.........
开发者ID:stevesloka,项目名称:bvcms,代码行数:101,代码来源:SqlDataProvider.cs

示例3: GetTableNameList

 public string[] GetTableNameList()
 {
     if (TableNames == null || !CurrentConnectionStringIsDefault)
     {
         var cmd = new SqlCommand("/* GetTableNameList() */ " + TABLE_SQL);
         var sList = new StringBuilder();
         using (IDataReader rdr = cmd.GetReader())
         {
             while (rdr.Read())
             {
                 sList.Append(rdr[SqlSchemaVariable.NAME]);
                 sList.Append("|");
             }
             rdr.Close();
         }
         string strList = sList.ToString();
         string[] tempTableNames = strList.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
         Array.Sort(tempTableNames);
         if (CurrentConnectionStringIsDefault)
         {
             TableNames = tempTableNames;
         }
         else
         {
             return tempTableNames;
         }
     }
     return TableNames;
 }
开发者ID:stevesloka,项目名称:bvcms,代码行数:29,代码来源:SqlDataProvider.cs

示例4: GetFunctionNameList

 public string[] GetFunctionNameList()
 {
     if (FunctionNames == null || !CurrentConnectionStringIsDefault)
     {
         var cmd = new SqlCommand("/* GetFunctionNameList() */ " + FUNCTION_SQL);
         var sList = new StringBuilder();
         using (IDataReader rdr = cmd.GetReader())
         {
             while (rdr.Read())
             {
                 string functionName = rdr[SqlSchemaVariable.NAME].ToString();
                 string schemaName = rdr[SqlSchemaVariable.SCHEMA_NAME].ToString();
                 sList.Append(schemaName + "." + functionName);
                 sList.Append("|");
             }
             rdr.Close();
         }
         string strList = sList.ToString();
         string[] tempFunctionNames = strList.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
         Array.Sort(tempFunctionNames);
         if (CurrentConnectionStringIsDefault)
             FunctionNames = tempFunctionNames;
         else
             return tempFunctionNames;
     }
     return FunctionNames;
 }
开发者ID:stevesloka,项目名称:bvcms,代码行数:27,代码来源:SqlDataProvider.cs

示例5: GetScalarFunctionRdr

 private IDataReader GetScalarFunctionRdr()
 {
     var cmd = new SqlCommand("/* GetScalarFunctionNameList() */ " + SCALER_FUNCTION_SQL);
     return cmd.GetReader();
 }
开发者ID:stevesloka,项目名称:bvcms,代码行数:5,代码来源:SqlDataProvider.cs

示例6: GetSPList

 public List<StoredProcedure> GetSPList()
 {
     var cmd = new SqlCommand("/* GetSPList() */ " + SP_SQL);
     var sps = new List<StoredProcedure>();
     using (IDataReader rdr = cmd.GetReader())
     {
         while (rdr.Read())
         {
             var s = rdr.GetString(0);
             string schema = rdr[SqlSchemaVariable.SCHEMA_NAME].ToString();
             var sp = new StoredProcedure(schema, s);
             if (rdr["ReturnType"] != DBNull.Value)
                 sp.ReturnType = rdr["ReturnType"].ToString();
             sps.Add(sp);
         }
         rdr.Close();
     }
     return sps;
 }
开发者ID:stevesloka,项目名称:bvcms,代码行数:19,代码来源:SqlDataProvider.cs

示例7: GetSPParams

        public IDataReader GetSPParams(string spName)
        {
            if (dtParamSql == null)
            {
                var cmdSP = new SqlCommand(SP_PARAM_SQL_ALL);
                dtParamSql = new DataTable();
                dtParamSql.Load(cmdSP.GetReader());
            }

            DataView dv = new DataView(dtParamSql);
            dv.RowFilter = "SPName = '" + spName + "'";
            dv.Sort = "OrdinalPosition";
            DataTable dtNew = dv.ToTable();
            return dtNew.CreateDataReader();
        }
开发者ID:stevesloka,项目名称:bvcms,代码行数:15,代码来源:SqlDataProvider.cs


注:本文中的System.Data.SqlClient.SqlCommand.GetReader方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。