当前位置: 首页 > news >正文

移动版网站开发山东省住房建设部网站首页

移动版网站开发,山东省住房建设部网站首页,南宁网站建设免费推广,南京市企业展厅设计公司在 SQL Server 2008 中#xff0c;用户定义表类型是指用户所定义的表示表结构定义的类型。您可以使用用户定义表类型为存储过程或函数声明表值参数#xff0c;或者声明您要在批处理中或在存储过程或函数的主体中使用的表变量。有关如何定义表结构的详细信息#xff0c;请参阅… 在 SQL Server 2008 中用户定义表类型是指用户所定义的表示表结构定义的类型。您可以使用用户定义表类型为存储过程或函数声明表值参数或者声明您要在批处理中或在存储过程或函数的主体中使用的表变量。有关如何定义表结构的详细信息请参阅 CREATE TABLE (Transact-SQL)。 若要创建用户定义表类型请使用 CREATE TYPE 语句。为了确保用户定义表类型的数据满足特定要求您可以对用户定义表类型创建唯一约束和主键。 有关与用户定义类型相关联的目录视图的信息请参阅 sys.types 和 sys.table_types。 限制   用户定义表类型具有下列限制 用户定义表类型不能用作表中的列或结构化用户定义类型中的字段。基于用户定义表类型的别名类型[NOT FOR REPLICATION] 选项是不允许的。CHECK 约束要求保留计算列。计算列的主键必须是 PERSISTED 和 NOT NULL。无法对用户定义表类型创建非聚集索引除非该索引是对用户定义表类型创建 PRIMARY KEY 或 UNIQUE 约束的结果。SQL Server 使用索引强制实施任何 UNIQUE 或 PRIMARY KEY 约束。不能在用户定义表类型的定义中指定 DEFAULT 值。在创建用户定义表类型定义后不能对其进行修改。不能在用户定义表类型的计算列的定义中调用用户定义函数。安全性   用户定义表类型的权限通过使用下列 Transact-SQL 关键字来遵循 SQL Server 的对象安全模式CREATE、GRANT、DENY、ALTER、CONTROL、TAKE OWNERSHIP、REFERENCES、EXECUTE、VIEW DEFINITION 和 REVOKE。   下面我用一个实例来讲解一下 -- -- 创建和使用自定义表类型-- 陈希章-- USE masterGO-- -- 创建测试数据库-- CREATE DATABASE demoGO -- -- 创建一个表-- USE demoGO CREATE TABLE Customers(    Id int NOT NULL,     Name char(10) NULL,     PRIMARY KEY (Id))GO USE demoGO-- -- 创建自定义表类型-- CREATE TYPE dbo.CustomerTable AS TABLE (    Id int NOT NULL,     Name char(10) NULL,     PRIMARY KEY (Id))GO -- -- 直接使用自定义表类型-- DECLARE c CustomerTableINSERT INTO c VALUES(1,Xizhang)SELECT * FROM c -- -- 在存储过程中使用自定义表类型-- CREATE PROC GetCustomers(c CustomerTable READONLY)ASINSERT Customers SELECT * FROM c --将传过来的参数其实是一个表的数据插入到Customers表里面去 -- -- 调用该存储过程一次性插入4行数据-- DECLARE temp CustomerTableINSERT INTO temp VALUES(7,Xizhang)INSERT INTO temp VALUES(2,Xizhang)INSERT INTO temp VALUES(3,Xizhang)INSERT INTO temp VALUES(4,Xizhang)EXEC GetCustomers ctempSELECT * FROM Customers -- -- 清理数据库-- USE masterGO DROP DATABASE demoGO 看起来不错对吧但是你应该马上想到一个问题如果说这个存储过程要在客户端代码中调用那么该怎么提供这个参数值呢 using System.Data.SqlClient;using System.Data; class Program{    static void Main(string[] args)    {        DataTable tb GetData();        using (SqlConnection conn new SqlConnection(serversql2008;databasedemo;integrated securitytrue))        {            using (SqlCommand cmd conn.CreateCommand())            {                cmd.CommandText GetCustomers;                cmd.CommandType CommandType.StoredProcedure;                SqlParameter param new SqlParameter(c, SqlDbType.Structured);//这个类型很关键                param.Value tb;                cmd.Parameters.Add(param);                conn.Open();                cmd.ExecuteNonQuery();                conn.Close();            }        }         Console.WriteLine(完成操作);        Console.Read();    }     private static DataTable GetData()    {        DataTable tb new DataTable();        tb.Columns.Add(Id,typeof(int));        tb.Columns.Add(Name, typeof(string));         //添加100个客户资料        for (int i 0; i 100; i)        {            DataRow row tb.NewRow();            row[0] i;            row[1] Name i.ToString();            tb.Rows.Add(row);        }         return tb;    }}   读者可能会疑惑这样做实在是太棒了可以一次性写入100行数据呢我们再来看看在服务端到底发生了什么事情 实际上在服务端确实会有一个定义临时变量的过程然后把所有的数据插入到这个变量中去然后再执行存储过程的 最后我们可以再深入探讨探讨 1. 客户端是否一定用DataTable类型 -- 推荐使用DataTable类型但也可以使用其他的类型例如DataReader的数据流 2. DataTable的字段名称是否要匹配 --不一定。只要顺序一致类型一样就可以了。 有一个参考的blog请看下面的链接 http://msdn.microsoft.com/zh-cn/library/bb675163.aspx 转载于:https://www.cnblogs.com/jhxk/articles/2915476.html
http://www.pierceye.com/news/349029/

相关文章:

  • 网站做区块链然后往里面投钱ecms dedecms phpcms wordpress
  • 网站设计原型图wap712c
  • 敦煌手机网站设计wordpress搭建像册
  • 电子商务网站建设实践课题背景企业网站管理系统设计报告
  • 有做数学题的网站吗建筑必看六个网站
  • 沧州网站建设建站系统企业网站建设选题背景
  • 大学网站设计推广 高端网站建设
  • 个人网站赚钱网站认证收费
  • 成都免费招聘网站建设网站和推广
  • 曲靖企业网站html5 app开发工具
  • 邵东建设公司网站哪家好怎样做公司自己的官方网站
  • 建设网站有哪些内容wordpress发布心情
  • 怎样找回网站备案密码有趣的wordpress插件
  • 国外网站空间购买wordpress直接
  • 企业网站建设报价方案模板网站建设前期规划方案
  • 做网站美工排版怎样进入公众号平台
  • 福州网站定制设计wordpress多说插件
  • 电脑网站打不开什么原因wordpress api 中文
  • 自己怎么免费做网站网页重庆专业平台推广公司
  • 英文网站建设电话咨询网站推广平台有哪些
  • 在家里组一个服务器做网站有心学做网站
  • 广东企业网站模板推荐flash网址
  • 网站标题正确书写标准h5页面制作平台有哪些
  • 详情页设计与制作网站品牌词优化怎么做
  • 成都科技网站建设咨询电话平面设计品牌设计
  • 网站建设的可行性报告做网站需要了解的知识
  • 高邮网站建设推广怎么做
  • 珠宝网站建设公司wordpress 显示指定分类
  • 站酷网设计素材龙岗网站建设公司哪家口碑好
  • 达州达县网站建设上海网络推广服务公司