SQL Server--------SQL Server常用(查看注释,新增注释,生成实体,查看表结构信息,case when...)
--新增字段:
--修改字段类型:
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 ,结果正确。 (正确 ✔)

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,'<','<')
set @value = replace(@value,'>','>')
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...)的更多相关文章
- sql语句查询数据库表结构信息
开发中经常用到查询指定表及其字段的信息,以下是我整理的SQL语句查询方法,供自己平时使用也提供给大家参考! 1.适用MS SQL SERVER: SELECT 表名 = then d.name els ...
- 查询Sqlserver 表结构信息 SQL
SELECT 表名 then d.name else '' end, 表说明 then isnull(f.value,'') else '' end, 字段序号 = a.colorder, 字段名 = ...
- PL/SQL中复制粘贴表结构信息
1.打开下图中的Tables文件夹 2.查找要找的表 3.右键单击找到的表—>Describe 4.复制所需的数据到EXCEL表中
- 【Mysql】使用一条sql查询出库表结构信息
1.新建查询 将以下脚本粘贴进去 脚本如下: SELECT TABLE_SCHEMA 库名, TABLE_NAME 表名, COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA ...
- (转)Sql Server 快速查看表结构(表描述及字段说明)
--表描述 SELECT tbs.name 表名,ds.value 描述 FROM sys.extended_properties ds LEFT JOIN sysobjects tbs ON ds. ...
- Sql语句查看表结构
快速查看表对的就说明,及表字段描述及字段类型 --表描述 SELECT tbs.name 表名,ds.value 描述 FROM sys.extended_properties ds LEFT JOI ...
- SQL:SQL优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...
- sp_help 快速查看表结构、视图信息
sp_helptext: 是MS SQL Server的一个系统存储过程,可以通过它来查看存储过程或者视图.函数源码 示例:sp_helptext viewName (viewName 即要查询的存 ...
- hive表信息查询:查看表结构、表操作等--转
原文地址:http://www.aboutyun.com/forum.PHP?mod=viewthread&tid=8590&highlight=Hive 问题导读:1.如何查看hiv ...
随机推荐
- 关于table的td和ul元素li隔行变色的功能实现
table元素的td和ul元素li隔行变色的功能实现 利用css控制二者的样式轻松实现隔行换色: 例如:table的css样式控制: table tr td{ background-color:颜 ...
- memcache 常用方法
<?php $memcache = new Memcache; //initialised memcahe $memcache->connect("127.0.0.1" ...
- JS数据类型判断的方法
最常用的判断方法:typeof var a='isString'; var b=121221; var c=[1,2,3]; var d=new Date(); var e=function(){ c ...
- 对于get系列className的不兼容
function getClass(param){ if(id.getElementsByClassName){ return id.getElementsByClassName(param); }e ...
- 2019 GOALS
ANNUAL GOAL 生活 1. 养成早睡早起的习惯 2. 体重:43kg 总体来讲希望自己有一个健康的生活方式,良好的饮食.运动习惯. 2019-04-17 18:47:14 UPDATE 3. ...
- iptables 认识 第二章
一.四表五链 netfilter 通过四表五链两个维度来定义数据包过滤规则. #上面图片中 raw 表不在postrouting 链中,请注意 上图中的五个位置也被称为五个钩子函数(hook func ...
- micropython驱动sh1106点亮oled
继上一帖给esp32刷入micropython之后,忍不住给以esp12e也刷了micropython 这里先说一下webrepl: 通过wifi可以和esp8266交互,以及便携的传输文件 首次使用 ...
- JS设计模式(6)命令模式
什么是命令模式? 定义:将一个请求封装成一个对象,从而使您可以用不同的请求对客户进行参数化. 主要解决:在软件系统中,行为请求者与行为实现者通常是一种紧耦合的关系,但某些场合,比如需要对行为进行记录. ...
- HAOI 2018 染色(容斥+NTT)
题意 https://loj.ac/problem/2527 思路 设 \(f(k)\) 为强制选择 \(k\) 个颜色出现 \(s\) 种,其余任取的方案数. 则有 \[ f(k)={m\choos ...
- FZOJ P2109 【卡德加的兔子】
题目描述 卡德加喜欢养兔子.他在达拉然的下水道里放了 $N$ 个兔笼(编号从 $1$ 到 $N$),里面养着他从德拉诺带来的兔子.它们的繁殖遵循斐波那契数列的规律:刚开始时,笼子里有一对刚出生的兔子. ...