--新增字段:

ALTER TABLE line_info
ADD line_remark NVARCHAR(MAX) DEFAULT '' 
EXECUTE sp_addextendedproperty  'MS_Description', '线路备注', 'user', 'dbo', 'table', 'line_info', 'column', 'line_remark'; --字段释义

--修改字段类型:

ALTER TABLE line_info
ALTER COLUMN line_remark INT

--CASE WHEN 遇到NULL时的处理方法

☞:CASE result WHEN NULL THEN '否'ELSE '是' END result1,结果永远是'是'。(错误 ✘)

☞:CASE WHEN result IS NULL THEN '否' ELSE '是' END result2  ,结果正确。 (正确 ✔)

--新增数据字段注释:
EXECUTE sp_addextendedproperty  'MS_Description', '推送结果', 'user', 'dbo', 'table', 'payment_details', 'column', 'push_result';
EXECUTE sp_addextendedproperty  'MS_Description', '推送信息备注', 'user', 'dbo', 'table', 'payment_details', 'column', 'push_result_remark';
 
 
--查看注释
SELECT
A.name AS table_name,
B.name AS column_name,
C.value AS column_description
FROM sys.tables A
INNER JOIN sys.columns B ON B.object_id = A.object_id
LEFT JOIN sys.extended_properties C ON C.major_id = B.object_id AND C.minor_id = B.column_id
WHERE A.name = 'payment_details'
 
 
--查看表结构基础信息

SELECT
col.name AS 名称 ,
typ.name AS 类型 ,
CASE WHEN col.is_nullable = 0 THEN '否' ELSE '是' END AS 是否为空 ,
col.max_length AS 长度 ,
ISNULL(def.definition, '') AS 默认值,
extprop.value AS 描述

FROM sys.tables tab
JOIN sys.columns (NOLOCK) col ON tab.object_id = col.object_id
JOIN sys.extended_properties (NOLOCK) extprop ON col.object_id = extprop.major_id AND col.column_id=extprop.minor_id
JOIN sys.types (NOLOCK) typ ON col.user_type_id = typ.user_type_id
LEFT JOIN sys.default_constraints (NOLOCK) def ON col.object_id = def.parent_object_id
AND col.column_id = def.parent_column_id
LEFT JOIN sys.index_columns (NOLOCK) indcol ON indcol.object_id = col.object_id
AND indcol.column_id = col.column_id
LEFT JOIN sys.indexes (NOLOCK) ind ON ind.index_id = indcol.index_id
AND ind.object_id = indcol.object_id
AND is_primary_key = 1
WHERE extprop.name = 'MS_Description'
AND col.column_id = extprop.minor_id
AND tab.name IN ( 'payment_details' )
ORDER BY tab.name ,col.column_id

--根据表结构生成实体

Declare @tableName nvarchar(300)
Declare @content nvarchar(max)
declare @value nvarchar(max)
set @content = ''
set @tableName = 'payment_details'

set @value = (

select --d.value 说明,
'
/// <summary>'+'
/// Description:'+isnull(cast( d.value As varchar(200)) ,'')+
'
/// </summary>'+'
public '

+ case c.name when 'uniqueidentifier' then 'Guid'
when 'int' then 'int'
when 'uniqueidentifier' then 'Guid'
when 'datetime' then 'DateTime'
when 'decimal' then 'double'
Else 'string' End +' '+b.name+ ' { get; set; }'

--a.name 表名,b.name 字段名,c.name 字段类型,c.length 字段长度 ,b.*
from sysobjects a left join syscolumns b on a.id=b.id left join systypes c on b.xtype=c.xtype
left join sys.extended_properties d on d.major_id = a.id and b.colorder = minor_id
where 1=1
and a.name=@tableName and a.xtype='U'
and c.name <> 'sysname'
for xml path('')
)

set @value = replace(@value,'&lt;','<')
set @value = replace(@value,'&gt;','>')
set @value= replace( @value,' ','')

--print @columns

set @content = 'using JnsFramework.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Eto
{

public class '+replace(@tableName,'_','')+'Entity : IModel
{
'+
@value
+'
}
}'

select cast(@content as xml)

 

✔

SQL Server--------SQL Server常用(查看注释,新增注释,生成实体,查看表结构信息,case when...)的更多相关文章

  1. sql语句查询数据库表结构信息

    开发中经常用到查询指定表及其字段的信息,以下是我整理的SQL语句查询方法,供自己平时使用也提供给大家参考! 1.适用MS SQL SERVER: SELECT 表名 = then d.name els ...

  2. 查询Sqlserver 表结构信息 SQL

    SELECT 表名 then d.name else '' end, 表说明 then isnull(f.value,'') else '' end, 字段序号 = a.colorder, 字段名 = ...

  3. PL/SQL中复制粘贴表结构信息

    1.打开下图中的Tables文件夹 2.查找要找的表 3.右键单击找到的表—>Describe 4.复制所需的数据到EXCEL表中

  4. 【Mysql】使用一条sql查询出库表结构信息

    1.新建查询 将以下脚本粘贴进去 脚本如下: SELECT TABLE_SCHEMA 库名, TABLE_NAME 表名, COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA ...

  5. (转)Sql Server 快速查看表结构(表描述及字段说明)

    --表描述 SELECT tbs.name 表名,ds.value 描述 FROM sys.extended_properties ds LEFT JOIN sysobjects tbs ON ds. ...

  6. Sql语句查看表结构

    快速查看表对的就说明,及表字段描述及字段类型 --表描述 SELECT tbs.name 表名,ds.value 描述 FROM sys.extended_properties ds LEFT JOI ...

  7. SQL:SQL优化

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  8. sp_help 快速查看表结构、视图信息

    sp_helptext: 是MS SQL Server的一个系统存储过程,可以通过它来查看存储过程或者视图.函数源码 示例:sp_helptext viewName (viewName  即要查询的存 ...

  9. hive表信息查询:查看表结构、表操作等--转

    原文地址:http://www.aboutyun.com/forum.PHP?mod=viewthread&tid=8590&highlight=Hive 问题导读:1.如何查看hiv ...

随机推荐

  1. CentOS 7 源码编译MariaDB

    下载源码包 安装 SCL  devtoolset-7 SCL(Software Collections)可以让你在同一个操作系统上安装和使用多个版本的软件,而不会影响整个系统的安装包.SCL为社区的以 ...

  2. 字典排序 sorted

    a = {6:2,8:0,1:4,-5:6,99:11,4:22} print( sorted(a.items()) ) #默认安照key排序的print( sorted(a.items(),key= ...

  3. 文件夹放到VS2015显示不出来

    在该项目中,点这个按钮 , 会显示没有包括进项目的文件 在要包括的文件上右键--包括在项目中即可 同理也可以从项目排除

  4. LeetCode169 求众数

    题目链接:https://leetcode-cn.com/problems/majority-element/ 给定一个大小为 n 的数组,找到其中的众数.众数是指在数组中出现次数大于 ⌊ n/2 ⌋ ...

  5. vue elementui报错总结

    1.  错误: TypeError: _self.$scopedSlots.default is not a function 原因:这是因为在v-for/v-if切换标签时,原本这些标签每一个都是独 ...

  6. Android活动和碎片的生命周期及addToBackStack()方法

    开始学了Android活动的生命周期后又到了碎片的生命周期,就开始有点乱了.又看了一些总结的文章有一个挺详细的:https://blog.csdn.net/lecepin/article/detail ...

  7. sql添加一个list的查询条件

    编程中往往会有需要对某个list的值进行查询的需求,而将一个list作为查询条件,我所知道的有两种方法: 1.for循环遍历,每次循环一个sql,每次查list中一个条件的数据,最后累加 ...(最基 ...

  8. ORM模型

    一.创建及映射(orm_intro_demo文件) 在项目新建App下的models.py文件下新建ORM模型: from django.db import models #如果要将一个普通的类变成一 ...

  9. 洛谷 P2915 【[USACO08NOV]奶牛混合起来Mixed Up Cows】

    类似于n皇后的思想,只要把dfs表示放置情况的数字压缩成一个整数,就能实现记忆化搜索了. 一些有关集合的操作: {i}在集合S内:S&(1<<i)==1: 将{i}加入集合S:S= ...

  10. javax.servlet-api 和 servlet-api 区别

    作者:Night Silent链接:https://www.zhihu.com/question/35812310/answer/64578510来源:知乎著作权归作者所有.商业转载请联系作者获得授权 ...