public List <ColumnInfo> GetColumnInfoListSP(string DbName, string TableName)
        {
            SqlParameter[] parameters =
            {
                new SqlParameter("@table_name",      SqlDbType.NVarChar, 384),
                new SqlParameter("@table_owner",     SqlDbType.NVarChar, 384),
                new SqlParameter("@table_qualifier", SqlDbType.NVarChar, 384),
                new SqlParameter("@column_name",     SqlDbType.VarChar, 100)
            };
            parameters[0].Value = TableName;
            parameters[1].Value = null;
            parameters[2].Value = null;
            parameters[3].Value = null;

            DataSet ds = RunProcedure(DbName, "sp_columns", parameters, "ds");
            int     n  = ds.Tables.Count;

            if (n > 0)
            {
                DataTable dt    = ds.Tables[0];
                int       r     = dt.Rows.Count;
                DataTable dtkey = CreateColumnTable();
                for (int m = 0; m < r; m++)
                {
                    DataRow nrow = dtkey.NewRow();
                    nrow["colorder"]   = dt.Rows[m]["ORDINAL_POSITION"];
                    nrow["ColumnName"] = dt.Rows[m]["COLUMN_NAME"];
                    string tn = dt.Rows[m]["TYPE_NAME"].ToString().Trim();
                    nrow["TypeName"]   = (tn == "int identity") ? "int" : tn;
                    nrow["Length"]     = dt.Rows[m]["LENGTH"];
                    nrow["Preci"]      = dt.Rows[m]["PRECISION"];
                    nrow["Scale"]      = dt.Rows[m]["SCALE"];
                    nrow["IsIdentity"] = (tn == "int identity") ? "√" : "";
                    nrow["isPK"]       = "";
                    nrow["IsNull"]     = (dt.Rows[m]["NULLABLE"].ToString().Trim() == "1") ? "√" : "";
                    nrow["defaultVal"] = dt.Rows[m]["COLUMN_DEF"];
                    nrow["deText"]     = dt.Rows[m]["REMARKS"];
                    dtkey.Rows.Add(nrow);
                }
                return(CodeCommon.GetColumnInfos(dtkey));
            }
            else
            {
                return(null);
            }
        }
Exemple #2
0
        public List <ColumnInfo> GetColumnInfoListSP(string DbName, string TableName)
        {
            SqlParameter[] array = new SqlParameter[]
            {
                new SqlParameter("@table_name", SqlDbType.NVarChar, 384),
                new SqlParameter("@table_owner", SqlDbType.NVarChar, 384),
                new SqlParameter("@table_qualifier", SqlDbType.NVarChar, 384),
                new SqlParameter("@column_name", SqlDbType.VarChar, 100)
            };
            array[0].Value = TableName;
            array[1].Value = null;
            array[2].Value = null;
            array[3].Value = null;
            DataSet dataSet = this.RunProcedure(DbName, "sp_columns", array, "ds");
            int     count   = dataSet.Tables.Count;

            if (count > 0)
            {
                DataTable dataTable  = dataSet.Tables[0];
                int       count2     = dataTable.Rows.Count;
                DataTable dataTable2 = this.CreateColumnTable();
                for (int i = 0; i < count2; i++)
                {
                    DataRow dataRow = dataTable2.NewRow();
                    dataRow["colorder"]   = dataTable.Rows[i]["ORDINAL_POSITION"];
                    dataRow["ColumnName"] = dataTable.Rows[i]["COLUMN_NAME"];
                    string text = dataTable.Rows[i]["TYPE_NAME"].ToString().Trim();
                    dataRow["TypeName"]   = ((text == "int identity") ? "int" : text);
                    dataRow["Length"]     = dataTable.Rows[i]["LENGTH"];
                    dataRow["Preci"]      = dataTable.Rows[i]["PRECISION"];
                    dataRow["Scale"]      = dataTable.Rows[i]["SCALE"];
                    dataRow["IsIdentity"] = ((text == "int identity") ? "√" : "");
                    dataRow["isPK"]       = "";
                    dataRow["cisNull"]    = ((dataTable.Rows[i]["NULLABLE"].ToString().Trim() == "1") ? "√" : "");
                    dataRow["defaultVal"] = dataTable.Rows[i]["COLUMN_DEF"].ToString().Replace("(", "").Replace(")", "");
                    dataRow["deText"]     = dataTable.Rows[i]["REMARKS"];
                    dataTable2.Rows.Add(dataRow);
                }
                return(CodeCommon.GetColumnInfos(dataTable2));
            }
            return(null);
        }
Exemple #3
0
        public string GetPROCCode(string dbname, string tablename)
        {
            this.dbobj.DbConnectStr = this._dbconnectStr;
            this.Fieldlist          = this.dbobj.GetColumnInfoList(dbname, tablename);
            DataTable keyName = this.dbobj.GetKeyName(dbname, tablename);

            this.DbName    = dbname;
            this.TableName = tablename;
            this.Keys      = CodeCommon.GetColumnInfos(keyName);
            foreach (ColumnInfo current in this.Keys)
            {
                this._key     = current.ColumnName;
                this._keyType = current.TypeName;
                if (current.IsIdentity)
                {
                    this._key     = current.ColumnName;
                    this._keyType = CodeCommon.DbTypeToCS(current.TypeName);
                    break;
                }
            }
            return(this.GetPROCCode(true, true, true, true, true, true, true));
        }
Exemple #4
0
        /// <summary>
        /// 得到某个表的存储过程
        /// </summary>
        /// <param name="dbname">库名</param>
        /// <param name="tablename">表名</param>
        /// <returns></returns>
        public string GetPROCCode(string dbname, string tablename)
        {
            dbobj.DbConnectStr = _dbconnectStr;
            Fieldlist          = dbobj.GetColumnInfoList(dbname, tablename);
            DataTable dtkey = dbobj.GetKeyName(dbname, tablename);

            DbName    = dbname;
            TableName = tablename;
            //Fieldlist = CodeCommon.GetColumnInfos(dt);
            Keys = CodeCommon.GetColumnInfos(dtkey);
            foreach (ColumnInfo key in Keys)
            {
                _key     = key.ColumnName;
                _keyType = key.TypeName;
                if (key.IsIdentity)
                {
                    _key     = key.ColumnName;
                    _keyType = CodeCommon.DbTypeToCS(key.TypeName);
                    break;
                }
            }
            return(GetPROCCode(true, true, true, true, true, true, true));
        }