精华内容
下载资源
问答
  • 1、USE 数据库名称 EXEC sp_addtype postcode,'char(8)','not null' 注释:在数据库中创建用来储存邮政编码信息的‘postcode’用户定义数据类型,数据...注释:删除上面创建自定义数据类型。 转载于:https://www...

    1、USE 数据库名称 EXEC sp_addtype postcode,'char(8)','not null'  

    注释:在数据库中创建用来储存邮政编码信息的‘postcode’用户定义数据类型,数据类型位char,长度为8000。

    2、USE 数据库名称 EXEC sp_droptype postcode

    注释:删除上面创建的自定义数据类型。

    转载于:https://www.cnblogs.com/zoushiyu/p/8482033.html

    展开全文
  • sql创建自定义数据类型

    千次阅读 2007-11-29 20:37:00
     7.3.1 用Enterprise Manager 创建用户自定义数据类型 用Enterprise Manager 创建用户自定义数据类型的方法是:在Enterprise Manager 中选择要创建用户自定义类型的数据库,在数据库对象“User Defined Data Types...
     除了使用系统提供的数据类型外,用户还可以根据需要用自定义的数据类型来定义表的列或声明变量。
    

      7.3.1 用Enterprise Manager 创建用户自定义数据类型

      用Enterprise Manager 创建用户自定义数据类型的方法是:在Enterprise Manager 中选择要创建用户自定义类型的数据库,在数据库对象“User Defined Data Types”上单击右键,从开始菜单中选择“New User Defined Data Type”选项,就会出现如图7-3 所示的定义用户自定义数据类型属性对话框。可以在其中指定要定义的数据类型的名称、继承的系统数据类型、是否允许NULL 值等属性。单击“确定”按钮,则添加用户自定义数据类型对象到数据库中。

      

      7.3.2 用系统存储过程Sp_addtype 创建用户自定义数据类型

      系统存储过程为用户提供了命令方式创建自定义数据类型的途径。其语法如下:

      sp_addtype [@typename =] type,

      [@phystype =] system_data_type

      [, [@nulltype =] 'null_type']

      [ , [ @owner = ] 'owner_name' ]

      各参数说明如下:

    [@typename =] type

      指定用户定义的数据类型的名称。 [@phystype =] system_data_type

      指定相应的系统提供的数据类型的名称及定义。不能使用TIMESTAMP 数据类型。当所使用的系统数据类型有额外说明时,需用引号将其括起来,如:‘CHAR(8)’。 [@nulltype =] ‘null_type’

      指定用户自定义的数据类型的NULL 属性,其值可为‘NULL’ ‘NOT NULL’或 ‘NONULL’。缺省时与系统默认的NULL 属性相同。 [ @owner = ] 'owner_name' ]

      指定用户自定义的数据类型的所有者。

      用户自定义的数据类型的名称在数据库中应是惟一的,但不同名称的用户自定义数据类型可以有相同的类型定义。在使用CREATE TABLE 命令时,用户自定义数据类型的 NULL 属性可以被改变,但其长度定义不能更改。 例7-9: 定义生日数据类型。

      exec sp_addtype birthday, datetime, 'not null'

      运行结果如下:

      (1 row(s) affected)

      Type added.

      例7-10:定义身份证号码数据类型。

      exec sp_addtype cardid, 'char(18)', 'not null'

      运行结果如下:

      (1 row(s) affected)

      Type added.

      例7-11: 定义地址数据类型。

      exec sp_addtype address, 'varchar(100)', 'not null'

      运行结果如下:

      (1 row(s) affected)

      Type added.

      7.3.3 删除用户自定义数据类型

      可以在Enterprise Manager 中选择用户自定义类型后,从快捷菜单中选择“Delete” 选

      项将其删除,也可以使用系统存储过程Sp_droptype 将其删除。其语法如下:

      sp_droptype [@typename =] ‘type’

      例7-12:

      exec sp_droptype cardid

      运行结果如下:

      (1 row(s) affected)

      (0 row(s) affected)

      Type has been dropped.

      注意:如果删除由表或其它数据库在使用的用户自定义数据类型,将会被系统拒绝 

    添加自定义数据类型  
      exec   sp_addtype   N'spbh',N'char(8)',N'NOT   NULL'  
      go  
       
      --创建规则,保证自定义类型的长度  
      CREATE   RULE   RULE_spbh    
      AS    
      len(@spbh)=8   --只能是8位  
      and   @spbh   not   like   '%[^0-9]'   --只能包含数字  
      go  
       
      --将规则绑定到自定义数据类型  
      exec   sp_bindrule   N'RULE_spbh',N'spbh'  
      go  
       
      --创建表  
      Create   table   kcgl(  
      spbh   spbh,  
      spmc   varchar(20)   not   null,  
      spgg   varchar(20)   not   null,  
      splx   varchar(20)   not   null,  
      pfdj   numeric(7,2)   not   null,  
      kcsl   int   default(0)   not   null)  
      go

    展开全文
  • 下面介绍使用T-SQL语句,创建用户自定义数据类型,即使用CREATE TYPE 语句: CREATE TYPE <自定义数据类型名称> FROM <所依据的系统数据类型> NULL/NOT NULL 2、DROP TYPE 语句 删除用户自定义数据...

    前言

    以下皆使用T-SQL语句的方式来执行语句,使用图形界面方式不再累赘。

    一、用户定义数据类型

    (一) CREATE TYPE 语句

    1、CREATE TYPE语句

    下面介绍使用T-SQL语句,创建用户自定义数据类型,即使用CREATE TYPE 语句:

    CREATE TYPE <自定义数据类型名称>
    FROM <所依据的系统数据类型> NULL/NOT NULL

    2、DROP TYPE 语句

    删除用户自定义数据类型,使用DROP TYPE 语句删除:

    DROP TYPE <自定义数据类型名称>

    例:在数据库YGGZ中,使用CREATE TYPE 命令创建用户自定义数据类型School_classNO,定义为char类型,且不能为空。

    语句如下:

    CREATE TYPE School_classNO
    FROM char(6) NOT NULL

    运行如下:

    3、自定义数据类型定义列

    若要自定义数据类型定义列时,可以定义一列,即在定义侯跟多个要定义的自定义数据类型,例使用用户自定义数据类型class_classID定义class表的classID列。这里创建class表与之前不同的是,在定义classID列时应用了用户自定义数据类型class_classID。

    USE YGGZ
    CREATE TABLE class
    (
        calssID  class_classID NULL PRIMARY KEY,
        Classname char(6) NOT NULL,
        Sex char(2) NOT NULL
    )
    GO

    (二)用户自定义表数据类型

    用户自定义表数据类型,可以作为参数提供给语句、函数、存储过程。

    CREATE TYPE <自定义表数据类型名称>
        AS TABLE <列的描述> (表的约束)

    二、变量

    变量分为全局变量和局部变量。

    (一)全局变量

    全局变量是由系统定义,,而不是用户定义的,在其名称前面加“@@”,用于提供当前的系统信息。

    其可以作为函数引用,SELECT @@+语句,即可调用,例SELECT @@ERROR即表示最后执行的sql语句的错误代码(0表示没错误)。

    (二)局部变量

    局部变量是由用户自己定义和使用的,在其局部变量前面加有“@”,要注意局部变量只是在声明它的批处理里或者过程中才有效,当执行结束后,即无效。

    1、DECLARE语句

    使用DECLARE语句定义局部变量,所有的局部变量声明后均初始化为NULL,格式如下:

    DECLARE @局部变量名称 <局部变量的数据类型>(=value)            /*value为变量赋值*/

    2、SET语句和SELECT语句

    我们可以使用SET语句或者SELECT语句对定义的局部变量赋值,

    (1)SET语句

    DECLARE @<局部变量名称>
    SET @<局部变量名称> = <表达式>

    在为局部变量赋值前,局部变量必须要首先已DECLARE 语句定义过。

    例1:创建两个个局部变量,前两个变量赋值后,并输出变量值(student_NO、student_Name)。

    语句如下:

    DECLARE @student_NO char(6),@student_Name char(6)
    SET @student_NO='001'
    SET @student_Name='曾成'
    SELECT @student_NO+@student_Name

    运行如下:

    例2:使用一个局部变量(class_number)来查找该学校School数据库classes表中班级编号为A103的班级的班主任和人数信息。

    USE School
    DECLARE @class_number char(5)
    SET @class_number='A103'
        SELECT teacher_headteacher,number_class
        FROM classes
        WHERE class_number=@class_number

    (2)SELECT语句

    SELECT <@数据类型名称=表达式>

    例:在数据量School中classes表使用SELECT语句将姓名为“成小”的学生输出。

    USE School
    DECLARE @name char(3)
    SELECT @name=classes_name
    FROM classes
    WHERE classes_name='成小'
    PRINT @name

    结语

    以上就是本次数据库原理与应用(SQL Server)笔记用户自定义数据类型与变量的全部内容,感谢您的阅读和支持,篇幅较长,若有表述以及代码中的不当之处,望指出!您的指出和建议能给作者带来很大的动力!!!

    展开全文
  • 今天给大家梳理一下SQLServer:用户自定义数据类型用法,希望对大家能有所帮助!1、基于基本数据类型创建的别名数据类型-- 创建生日的数据类型 CREATE TYPE birthday...

    今天给大家梳理一下SQLServer:用户自定义数据类型用法,希望对大家能有所帮助!

    1、基于基本数据类型创建的别名数据类型

    -- 创建生日的数据类型
    CREATE TYPE birthday
    FROM datetime NULL;
    -- 创建用户表
    CREATE TABLE userInfo
    (id  varchar(32),  userName  nvarchar(30),birthday
    birthday);
    -- 插入测试数据
    INSERT userInfo (id,userName,birthday)
    
    
     VALUES('123','小明','2005-01-02 12:30')
    
    
    -- 执行查询
    SELECT * FROM userInfo
    

    2、CLR用户定义数据类型

    2.1 概念介绍

    SQL CLR (SQL Common Language Runtime) 是自 SQL Server 2005 才出现的新功能,它将.NET Framework中的CLR服务注入到 SQL Server 中,让 SQL Server 的部分数据库对象可以使用 .NET Framework 的编程语言开发(只支持VB.NET和C#),包括预存程序、用户自定义函数、触发程序、用户自定义类型以及用户自定义汇总函数等功能。

    说明:默认情况下,在 SQL Server 中关闭了执行 CLR 代码的功能。 可以使用sp_configure系统存储过程来启用 CLR。

     
    exec sp_configure 'clr enabled',1  --1,启用clr\0,禁用clr
    

    2.2 CLR开发步骤

    1、在.NET中新建一个类,并在这个类里新建一个public方法。

    2、编译这个类为一个DLL。

    3、在SQL Server中注册这个DLL。

    4、新建一个SQL Server函数来访问指定的.NET方法。

    2.3 简单示例

    1、在Visual Studio中新建一个名为“SQLServerCLRTest”的类库项目。然后,新建一个名为“CLRFunctions”的类,并在其内添加一个名为“HelloWold”的方法,代码如下:

    public class CLRFunctions 
    { 
    	public static string HelloWorld(string Name) 
    	{ 
    		return ("你好," + Name); 
    	} 
    }
    

    注意:为了满足SQL Server可以调用它,必须定义为public和static的方法

    2、编译这个项目为一个DLL,并在SQL Server中注册它。这也是比较简单的,在Visual Studio中右键单击项目,选择“生成”后程序就会生成一个SQLServerCLRTest.DLL。然后将DLL拷贝到安装SQLServer服务器的电脑上。

    3、启用SQL Server中的CLR

    ---开启所有服务器配置选项 
    EXEC sp_configure N'show advanced options', N'1'  
    RECONFIGURE WITH OVERRIDE
     --开启clr enabled 选项 
    EXEC sp_configure N'clr enabled', N'1' 
    RECONFIGURE WITH OVERRIDE  
    --关闭所有服务器配置选项 
    
    
    EXEC sp_configure N'show advanced options', N'0'  
    RECONFIGURE WITH OVERRIDE --如果存在权限问题,执行下面一段脚本 
    alter database [master] set TRUSTWORTHY on EXEC sp_changedbowner 
    'sa'
    

    4、注册DLL

    在SQLServer查询分析器执行如下命令:

    CREATE ASSEMBLY asmHelloWorld FROM 'C:\SQLServerCLRTest.dll' 
    

    或者在SQLServer中直接界面注册

    5、SQL Server中调用方法

    CREATE FUNCTION dbo.CLRHelloWorld
    (
      @name as nvarchar(200)
    )
    RETURNS nvarchar(200)
    AS EXTERNAL NAME asmHelloWorld
    .[SQLServerCLRTest.CLRFunctions].HelloWorld
    


    6、查询分析器中调用

    SELECT dbo.CLRHelloWorld('小明')
    


    3、用户定义表数据类型

    用户定义表数据类型是从SQL Server 2008开始提供的一种新功能。下面的语句首先创建一个名为CustomerTableType的表数据类型,然后创建一个基于该类型的变量,并向其中插入数据和查询数据。

    --创建用户自定义表类型
    CREATE TYPE dbo.CustomerTable AS TABLE 
    (
    id int NOT NULL, 
    name char(10) NULL, 
    age int 
    PRIMARY KEY (Id)
    )
    ---使用用户自定义表类型
    DECLARE @t CustomerTable
    INSERT INTO @t VALUES(1,'小明',30)
    SELECT * FROM @t ;
    --删除用户算定义表类型
    SP_DROPTYPE CustomerTable
    

    IT技术分享社区

    个人博客网站:https://programmerblog.xyz

    文章推荐程序员效率:画流程图常用的工具程序员效率:整理常用的在线笔记软件远程办公:常用的远程协助软件,你都知道吗?51单片机程序下载、ISP及串口基础知识硬件:断路器、接触器、继电器基础知识

    展开全文
  • 创建用户自定义数据类型时,必须提供三个数:  数据类型的名称  所基于的系统数据类型  数据类型的可空性(是否可以为空)。 这样的话就可以在添加列的数据类型时找到自定义数据类型 由于指定了数据...
  • DB2用户自定义数据类型UDT

    千次阅读 2013-04-08 08:38:12
    DB2用户自定义类型(User-Defined distinct types,UDT),这里涉及自定义单值类型,基于DB2内置数据类型。 1、创建 语法如下: CREATE [distinct] TYPE distinct_type_name AS source_data_type WITH COMPARISONS ...
  • 除了使用系统提供的数据类型外,用户还可以... 用Enterprise Manager 创建用户自定义数据类型的方法是:在Enterprise Manager 中选择要创建用户自定义类型的数据库,在数据库对象“User Defined Data Types”上单击...
  • 除了已经有的数据类型,还可以在创建3中用户自定义数据类型。 一种是从基本数据类型创建的别名数据类型,这样做的目的是为了更清楚地说明对象中值的类型。列如,下面的语句创建了一个基于datetime的birthday数据...
  • 一、用户自定义数据类型创建:1,执行系统存储过程:Exec sp_addtype type,system_data_type [,null_type,owner_name]·type 自定义数据类型名,必须保证符合标识符规则,而且数据库中唯一。·system_data_type 是...
  • 用户自定义数据类型包括: 类 结构体 Union(共用体) 枚举 Typedef定义的类型 类 面向对象编程的C++构建块是class,它是用户定义的数据类型,拥有自己的数据成员和成员函数,可以通过创建该类的实例来访问和...
  • 本文将“用户自定义数据类型(UDT)的应用”及在STEP 7 V5.x 和 STEP 7 (TIA 博途) 不同的处理方法。在 STEP 7 V5.x 中的步骤 在数据块中以结构体变量(声明一个 "Struct" 作为匿名的数据类型)的方式创建一个数据记录,...
  • 自定义数据类型映射

    2007-08-25 19:11:00
    自定义数据类型映射:Hibernate提供了自定义映射类型接口,允许用户以编程的方式创建自定义映射类型,以便把持久化类的任意类型的属性映射到数据库中。 现在我们以一个简单的例子来说明自定义数据类型映射的思想和...
  • <!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"
  • Verilog中不支持用户自定义数据类型,verilog中现有的数据类型适用于RTL级和gate级建模,没有类似于C语言中的更高级的抽象数据类型。System Verilog为系统级和架构级别的建模增加了许多新类型。 system verilog使用...
  • Qt:创建自定义Qt类型

    2021-04-09 22:19:40
    当使用Qt创建用户界面时,尤其是那些具有专门控件和功能的用户界面时,开发人员有时需要创建可以与Qt现有值类型集一起使用或者代替其使用的新数据类型 标准类型(比如QSize、QColor、QString)都可以存储在QVariant...
  • 创建用户类型过程(PJ_HV_userdefinetype) */ CREATE procedure PJ_HV_userdefinetype @name sysname = null, @type sysname = null, @rule varchar(8000) = null as declare @stmt va...
  • 创建自定义Qt类型

    2015-12-16 11:10:54
    在Qt中建立用户界面,特别是那些带有特殊控制和特征的界面时,开发者通常需要创建新的数据类型来扩展或替换 Qt 已经存在的值类型集合。 类似于 QSize,QColor 和 QString 的标准类型都可以存储于 QVariant ...
  • 类名数据集对象类:...开发者创建自定义数据集实现类,必须将数据集数据统一构造为DataSet对象。构造方法DataSet提供了以下构造方法:DataSet(int initRowCap, int colCount, java.la...
  • Qt 之创建自定义类型

    千次阅读 2016-09-02 20:58:26
    当使用Qt创建用户界面时,特别是那些带有特殊控制和特征的界面时,开发者通常需要创建新数据类型来扩展或替换Qt现有的的值类型集合。 标准类型,比如:QSize、QColor和QString都可以被存储到QVariant对象中,在基于...
  • 以Student、Class、Grade为例,web中要显示学生基本信息,以及班级名称和年级名称。 请见数据库关系模型: ...2. 创建自定义类型,包含学生、班级、年级信息,通过linq获取数据集合,然后同样...
  • 是SQLSERVER支持的内置数据类型。用户可以通过两个系统存储过程创建和删除用户定义类型。(它们不是真正的新数据类型,而像是一种复合型数据... (1)、格式:Sp_addtype 自定义数据类型名,系统的数据类型,’[null | ...
  • 枚举是一种用户定义的数据类型,它用关键字enum以如下语法来声明: enum 枚举类型名字{名字0,...,名字n}; 枚举类型的名字通常可以省略,我们使用的是花括号里的常量符号,它们的类型是int,值依次从0到n。 enum ...
  • 结构能够实现 使用一种数据类型来包含所有需要的信息。 结构是使用关键字struct 定义的用户定义类型。 7.1.2 定义结构 struct BOOK // 创建一种新的变量类型,名称是BOOK { char Title[80]; char Author...
  • Qt之创建自定义类型

    2017-02-21 10:45:00
    摘要:简述 当使用Qt创建用户界面时,特别是那些带有特殊控制和特征的界面时,开发者通常需要创建新数据类型来扩展或替换Qt现有的的值类型集合。 标准类型,比如:QSize、QColor和QString都可以被存储到QVariant对象...
  • java 用户自定义字段创建数据

    千次阅读 2013-07-29 14:43:12
    1、 为了管理方便,给用户自己定义三种数据类型  1。Varchar类型  2。INT类型  3。Numeric类型  创建两个表,一个是你要ALTER的表,令一个是存放该表的用户信息:如该字段的中文名字,该字段类型,大小,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,349
精华内容 939
关键字:

创建用户自定义数据类型