SQLServer查询所有字段并将xtype转换为字符串

查询语句

select c.* from syscolumns c, sysobjects t where c.id = t.id and t.type = 'U' and t.name = ?

查询结果中name表示字段名,xtype表示字段类型,但是用数字表示的,进行转换

switch (num) {
            default:
                result = "VARCHAR";
            case "34":
                result = "IMAGE";
                break;
            case "35":
                result = "TEXT";
                break;
            case "36":
                result = "UNIQUEIDENTIFIER";
                break;
            case "48":
                result = "TINYINT";
                break;
            case "52":
                result = "SMALLINT";
                break;
            case "56":
                result = "INT";
                break;
            case "58":
                result = "SMALLDATETIME";
                break;
            case "59":
                result = "REAL";
                break;
            case "60":
                result = "MONEY";
                break;
            case "61":
                result = "DATETIME";
                break;
            case "62":
                result = "FLOAT";
                break;
            case "98":
                result = "SQL_VARIANT";
                break;
            case "99":
                result = "NTEXT";
                break;
            case "104":
                result = "BIT";
                break;
            case "106":
                result = "DECIMAL";
                break;
            case "108":
                result = "NUMERIC";
                break;
            case "122":
                result = "SMALLMONEY";
                break;
            case "127":
                result = "BIGINT";
                break;
            case "165":
                result = "VARBINARY";
                break;
            case "167":
                result = "VARCHAR";
                break;
            case "173":
                result = "BINARY";
                break;
            case "175":
                result = "CHAR";
                break;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要判断SQL Server中的字段类型,有几种方法可以使用。其中一种方法是使用以下代码查询整个数据库的表及其数据类型和说明: ```sql SELECT object_name(ID) AS 表名, c.name AS 字段名, t.name AS 数据类型, c.length AS 长度, c.isnullable AS 是否可空, c.collation AS 字符排序规则, p.value AS 说明 FROM syscolumns c JOIN systypes t ON c.xtype = t.xtype LEFT JOIN sys.extended_properties p ON c.id = p.major_id AND c.colid = p.minor_id WHERE objectproperty(c.id, 'IsUserTable') = 1 ORDER BY object_name(ID), c.colorder ``` 这段代码将返回每个字段的表名、字段名、数据类型、长度、是否可空、字符排序规则和说明。注意,在查询之前,你需要将`sql`替换为实际的数据库名称。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [SQL 判断字段类型语句](https://download.csdn.net/download/weixin_38660918/13696627)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [sql server查询字段数据类型、或者说是表结构](https://blog.csdn.net/h4568502h/article/details/115573195)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [vb.net链接sqlserver数据库,加mdi父窗口背景按钮功能](https://download.csdn.net/download/Xiucai198702/88214354)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值