您的位置:首页 > 娱乐 > 明星 > 浏览器里的广告怎么推广的_基于php的网站设计与实现_百度浏览器网址链接_电商代运营公司100强

浏览器里的广告怎么推广的_基于php的网站设计与实现_百度浏览器网址链接_电商代运营公司100强

2024/10/5 22:26:07 来源:https://blog.csdn.net/Ljj_fishhG/article/details/142331502  浏览:    关键词:浏览器里的广告怎么推广的_基于php的网站设计与实现_百度浏览器网址链接_电商代运营公司100强
浏览器里的广告怎么推广的_基于php的网站设计与实现_百度浏览器网址链接_电商代运营公司100强

目录

      • 前言
      • 分类
        • 基于标量类型
          • 新建
          • 查询语句
        • 用户定义的表类型
          • 新建
          • 查询语句
        • 基于 CLR
          • 新建
          • 查询语句

前言

最近接触了SqlServer的自定义类型–TYPE,在此记录一下所得

分类

在 SQL Server 中,用户定义的类型(User-Defined Types, UDT)是一种扩展 SQL Server 内置数据类型的功能,允许开发者创建自己的复杂数据类型。用户定义的类型可以基于标量类型(如 int、varchar 等)或者用户定义的类型(table types),还可以基于** CLR**(Common Language Runtime),这类类型是通过 .NET Framework 编写的类来定义的。

基于标量类型

这种是最简单的,可以理解为将SqlServer支持的基本类型约束一下范围,取个别名。

新建
CREATE TYPE [ schema_name. ] type_name
{FROM base_type[ ( precision [ , scale ] ) ][ NULL | NOT NULL ]} [ ; ]
查询语句
SELECTt.name  [类型名],tt.name  [源类型],t.max_length,t.precision,t.scale,t.is_nullable ,SUSER_SNAME( u.sid ) [类型所有者],s.name  [所处架构]
FROMsys.types tJOIN sys.types tt ON t.system_type_id = tt.user_type_idJOIN sys.schemas s ON s.schema_id = t.schema_id JOIN sys.sysusers u ON s.principal_id = u.uid 
WHEREt.is_user_defined = 1 AND t.is_table_type = 0 AND t.is_assembly_type = 0;
用户定义的表类型
新建
CREATE TYPE [ schema_name. ] type_name
AS TABLE ( { <column_definition> [ , ...n ] }| [ <table_constraint> ] [ , ...n ]| [ <table_index> ] [ , ...n ] )[ WITH ( <table_option> [ , ...n ] ) ][ ; ]
查询语句
SELECTt.name [自定义类型名],s.name [所处架构],c.name [列名],y.name [列类型],SUSER_SNAME( u.sid ) [所有者],c.max_length,c.precision,c.scale,c.is_identity,c.is_nullable 
FROMsys.table_types tINNER JOIN sys.columns c ON c.object_id = t.type_table_object_idINNER JOIN sys.types y ON y.user_type_id = c.user_type_idINNER JOIN sys.schemas s ON s.schema_id = t.schema_idLEFT JOIN sys.sysusers u ON s.principal_id = u.uid 
WHEREt.is_user_defined = 1 AND t.is_table_type = 1
基于 CLR

该类型引用注册的 assembly 中定义的类型,新建反而比较简单。

新建
CREATE TYPE [ schema_name. ] type_name
{FROM  EXTERNAL NAME assembly_name [ .class_name ]
} [ ; ]
查询语句
-- 查询所有基于 CLR 的用户定义类型
SELECTt.name [自定义类型名],a.name  [assembly类型名] ,s.name [所处架构],SUSER_SNAME( u.sid ) [所有者]
FROMsys.types tJOIN sys.assemblies a ON t.principal_id = a.assembly_id JOIN sys.schemas s ON s.schema_id = t.schema_idJOIN sys.sysusers u ON s.principal_id = u.uid 
WHEREt.is_user_defined = 1 AND t.is_assembly_type = 1;

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com