zoukankan      html  css  js  c++  java
  • 数据库获取所有的表,所有的视图,字段说明,字段类型,字段名

    //表、视图 绑定给下拉
    public void BindDropName() { string sql = "Select Name FROM SysObjects Where XType='U' orDER BY Name";// DataTable dt = SqlOP.ExecuteDataset(sql).Tables[0]; DataSet dv=SqlOP.ExecuteDataset("select [name] as Name from sys.views ");//视图 foreach (DataRow dr in dv.Tables[0].Rows) { DataRow row = dt.NewRow(); row["Name"] = dr[0]; dt.Rows.Add(row);//这样就可以添加了 } DropDownList1.DataSource = dt; DropDownList1.DataTextField = "Name"; DropDownList1.DataValueField = "Name"; DropDownList1.DataBind(); }

    生成实体

          protected void ToEity()
            {
                string sql = "SELECT   CAST(g.value AS nvarchar)as notes,  a.name,b.name as ztype ,c.isnullable FROM     systypes b,    sys.columns AS a LEFT OUTER JOIN  sys.syscolumns AS c ON a.name = c.name AND a.object_id = c.id left join sys.extended_properties g on (a.object_id = g.major_id AND a.column_id=g.minor_id) WHERE   (a.object_id = OBJECT_ID('" + DropDownList1.SelectedValue + "'))and c.xtype=b.xusertype order by object_id,a.column_id";
    
                DataSet ds = SqlOP.ExecuteDataset(sql);
                string json = "using System;
     using System.Text;
     using System.Collections; 
     using System.Collections.Generic;
     namespace mode 
     {
     public  class  " + DropDownList1.SelectedValue + "
    { ";
    
                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    json += " /// <summary> 
     ///   " + dr[0].ToString() + " 
     /// </summary> 
     public " + sqlType(dr[2].ToString(), dr[3].ToString()) + " " + dr[1].ToString() + " 
    { 
     get;
     set;
     }
    ";
                }
                json += "} 
    }";
                txtVaule.Text = json;
            }
    
    
            protected string sqlType(string xtpye, string isnullable)
            {
    
                switch (xtpye)
                {
                    case "uniqueidentifier":
                        if (isnullable.Equals("1"))
                        {
                            return "Guid?";
                        }
                        else
                        {
                            return "Guid";
                        }
                        break;
                    case "nvarchar":
                        return "String";
                        break;
                    case "varchar":
                        return "String";
                        break;
                    case "sysname":
                        return "String";
                        break;
                    case "text":
                        return "String";
                        break;
                    case "char":
                        return "String";
                        break;
                    case "int":
                        if (isnullable.Equals("1"))
                        {
                            return "Int32?";
                        }
                        else
                        {
                            return "Int32";
                        }
                        break;
                    case "tinyint":
                        if (isnullable.Equals("1"))
                        {
                            return "Byte?";
                        }
                        else
                        {
                            return "Byte";
                        }
                        break;
    
                    case "bit":
                        if (isnullable.Equals("1"))
                        {
                            return "Byte?";
                        }
                        else
                        {
                            return "Byte";
                        }
                        break;
                    case "datetime":
                        if (isnullable.Equals("1"))
                        {
                            return "DateTime?";
                        }
                        else
                        {
                            return "DateTime";
                        }
    
                        break;
    
                    case "float":
                        if (isnullable.Equals("1"))
                        {
                            return "Double?";
                        }
                        else
                        {
                            return "Double";
                        }
    
                        break;
                    case "decimal":
                        if (isnullable.Equals("1"))
                        {
                            return "Decimal?";
                        }
                        else
                        {
                            return "Decimal";
                        }
    
                        break;
                    default:
                        return "String";
                        break;
                }
    
    
            }
  • 相关阅读:
    进程控制
    进程的状态与转换
    进程的概念和特征
    操作系统的体系结构:大内核和微内核
    系统调用
    中断和异常
    【转】Java-----jar反编译修改重新打包
    [转] Android Volley完全解析(一),初识Volley的基本用法
    [转] This Android SDK requires Android Developer Toolkit version 23.0.0 or above
    Can't bind to local 8700 for debugger报错和解决
  • 原文地址:https://www.cnblogs.com/lucoo/p/5056733.html
Copyright © 2011-2022 走看看