Sql获取数据表字段说明

SELECT  Sysobjects.name AS TABLE_NAME ,
        syscolumns.Id ,
        syscolumns.name AS COLUMN_NAME ,
        systypes.name AS DATA_TYPE ,
        syscolumns.length AS CHARACTER_MAXIMUM_LENGTH ,
        sys.extended_properties.[value] AS COLUMN_DESCRIPTION ,
        syscomments.text AS COLUMN_DEFAULT ,
        syscolumns.isnullable AS IS_NULLABLE
FROM    syscolumns
        INNER JOIN systypes ON syscolumns.xtype = systypes.xtype
        LEFT JOIN sysobjects ON syscolumns.id = sysobjects.id
        LEFT OUTER JOIN sys.extended_properties ON ( sys.extended_properties.minor_id = syscolumns.colid
                                                     AND sys.extended_properties.major_id = syscolumns.id
                                                   )
        LEFT OUTER JOIN syscomments ON syscolumns.cdefault = syscomments.id
WHERE   syscolumns.id IN ( SELECT   id
                           FROM     SYSOBJECTS
                           WHERE    xtype = ‘U‘ )
        AND ( systypes.name <> ‘sysname‘ ) AND Sysobjects.name=‘OriginalData‘	-- 表名称
ORDER BY syscolumns.colid

  见图:

时间: 2024-11-05 11:26:28

Sql获取数据表字段说明的相关文章

tp数据表字段缓存

在维护一个tp写的项目,因为需要在产品表product中增加了一个字段status,但是不论如何就是无法给status赋值,查了资料才发现,原来是tp的数据表字段缓存在搞鬼. 在runtime>Data>_fields文件中找到对应的文件,文件名与表名同,这里是Product.php,增加status.再次尝试,立马就可以了. 在网上看到一篇讲这个问题的文章如下, 今天在应用thinkphp框架开发的程序做些二次开发修改, 其中有改动到数据结构,新增了几个字段. 调用 M(‘xxx’)->

MySQL数据表字段内容的批量修改、复制命令

复制字段里的数据命令: SQL代码 UPDATE table SET 被替换的字段名=被复制的字段名 演示如下 SQL代码 UPDATE dede_archives SET senddate=pubdate 如何手动将同一数据表内不同字段之间的内容批量转换,可以参考下面的命令: SQL代码 UPDATE table set 字段名=REPLACE(字段名,'原字符串','替换的字符串') where 已知的字段名 LIKE '%原字符串%' 应用到本文实例 SQL代码 UPDATE pw_mem

在不清楚数据表字段数据分布的情况下,应该创建什么类型的索引?

在讨论之前,先看看关系型数据库常见的索引类型: 1.位图索引,适用于该字段重复数据很多的情况: 2.B+树索引,适用于该字段重复数据不多的情况. 在不清楚数据表字段数据分布的情况下,应该创建什么类型的索引?个人觉得以上两种都不太适用,可以尝试使用第3类的索引: 3.倒排索引,在搜索引擎使用较多,适用于大多数的情况. 使用普通的文本文件格式存储倒排索引,格式为: value:rowid(行标识码),字段值对应value,rowid对应该行的标识码. 要注意的是,在创建倒排索引时,倒排索引的key需

tp5.0 SHOW COLUMNS FROM 生成数据表字段缓存

TP5.0 生成数据表字段缓存 =控制台执行以下命令= 1.生成指定数据库的所有表字段缓存 php think optimize:schema --db databaseName 2.生成指定数据表的缓存 php think optimize:schema --table tableName 3.应用使用了不同的数据库连接,可以根据模块来生成,如下: php think optimize:schema --module index 生成之后关闭调试模式:就不会执行 SHOW COLUMNS FR

Mysql数据表字段的增,改,删

用 alter 命令来进行字段的增,改,删 1.使用 ALTER 命令及 DROP 子句来删除以上创建表的 i 字段:(如果数据表中只剩余一个字段则无法使用DROP来删除字段.) mysql> alter table runoob drop name; //删除runoob表中的name字段 2.使用 ALTER 命令 ADD 子句来向数据表中添加列,如下实例在表 testalter_tbl 中添加 i 字段,并定义数据类型: mysql> alter table runoob add id

laravel 同数据表字段比较查询和状态不正规排序

今天写群组推荐接口,要求未满的群 ( 群最大人数字段maxusers, 群人数字段affiliations_count 都在群组表中),官方,热门(普通群0 ,官方1,热门2 ) 排序的群 同表字段比较查询: ->whereRaw('affiliations_count  < maxusers') 按规定的状态排序(本例中要按1,2,0排序) ->orderByRaw("FIELD(group_level, " . implode(", ", [1

SQL把a表字段数据存到b表字段 update,,insert

update SYS_Navigation set SYS_Navigation.PARENT_XH = SYS_Power_menu.parent_id,SYS_Navigation.web_title = SYS_Power_menu.menu_name,SYS_Navigation.WEB_FLAG=1,SYS_Navigation.url=SYS_Power_menu.urlfrom SYS_Power_menuwhere SYS_Navigation.xh = SYS_Power_me

sql server 删除表字段和字段的约束

删除数据库表中的字段时,使用了 :alter table 表名 drop column 列名 服务器返回的错误为:Server: Msg 5074, Level 16, State 1, Line 1The object 约束名 is dependent on column 列名.Server: Msg 4922, Level 16, State 1, Line 1ALTER TABLE DROP COLUMN 列名 failed because one or more objects acce

phome_enewsclass 数据表字段解释(栏目主表)

字段名 类型 解释 附加说明 classid smallint(6) 栏目ID   bclassid smallint(6) 父栏目ID   classname varchar(50) 栏目名称   sonclass text 终极栏目ID集合 父栏目下所有终极栏目ID集合,多个栏目ID用“|”隔开,例如:|1|5|8| is_zt tinyint(1)   预定义字段,暂时用不到,默认值0 lencord smallint(6) 每页显示信息数   link_num tinyint(4) 相关