上一页 1 ··· 76 77 78 79 80 81 82 83 84 ··· 94 下一页
摘要: 检查(Check)约束,可以约束字段在插入数据或更新数据时,必须满足check约束定义好的业务规则。CHECK约束不能被定义的Text、ntext或image数据类型的字段上。RDBMS会使用Check约束业务规则验证插入或更新的值,当结果为TRUE或UNKNOWN时,接授对数据插入或更新,如查验证结果为FALSE,检查约束将拒绝对字段数据插入或是更新操作。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATETABLE[dbo].[U 阅读全文
posted @ 2011-01-07 16:18 Insus.NET 阅读(496) 评论(0) 推荐(2) 编辑
摘要: Foreign Key约束,用于引用完整性,是为了将外键字段值限制为被引用字段中现有的值。这种约束关系到两个表也可以是同一个表,被引用表(Referenced table)中的定段一定是主键或唯一约束,不存在NULL,但是外键字段是允许NULL值的。为了演示,找出以前一个例子,http://www.cnblogs.com/insus/articles/1918840.html第二个表,照代码执行,没有做出Foreign key的约束,因为只是做了说明,参考下面例子,执行代码产生的表,才是真正做到Foreign key的约束。代码Code highlighting produced by Act 阅读全文
posted @ 2011-01-07 13:35 Insus.NET 阅读(577) 评论(0) 推荐(2) 编辑
摘要: 可以首先定义两个时间变量,@BeginTime 和@EndTime数据类型均为Time。执行SQL语句之前,先把系统当前时间赋值给@BeginTime变量,在SQL语句结果时,再把当前系统时间赋值给@EndTime变量。然后使用DATEDIFF函数计算时间差,即可得到SQL执行所需要时间。参考下面演示例子:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->--删除计划缓存中的所有元素,通过指定计划句柄或SQL句柄从计划缓存中删除特定计划,或 阅读全文
posted @ 2011-01-07 11:11 Insus.NET 阅读(631) 评论(0) 推荐(2) 编辑
摘要: 唯一约束是保证字段的数据唯一性,与主键约束(Primary key)不同的是,在一个表中可以定义多字段为唯一约束,也可以定义在一个可允许NULL的字段上。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATETABLE[dbo].[Article](Art_IdINTNOTNULLCONSTRAINT[UQ_Article]UNIQUE,NameNVARCHAR(100)NOTNULL--Otherfielddefinition)在存在 阅读全文
posted @ 2011-01-07 10:13 Insus.NET 阅读(349) 评论(0) 推荐(2) 编辑
摘要: SQL Server主键约束定义唯一约束,同时也会创建一个唯一索引(Unique index),同时这个字段不允许有NULL值存入。一个表中,只能定义一个主键约束,一旦定义了主键,那它就自动拥有UNIQUE的唯一约束。下面是在创建表时,定义主键:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->CREATETABLE[dbo].[Orders](OrdersIdINTIDENTITY(1,1)PRIMARYKEYNOTNULL,--Otherf 阅读全文
posted @ 2011-01-07 09:35 Insus.NET 阅读(459) 评论(0) 推荐(2) 编辑
摘要: EXCEPT(差集)集合运算, 对两个输入查询的结果集合进行操作,返回出现第一个结果集中,但不出现在第二个结果集中的所有行。为了演示,首选创建两个变量表,并插入数据:第一个表:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->DECLARE@T1ASTABLE(ColName1NVARCHAR(50),ColName2NVARCHAR(50))INSERTINTO@T1VALUES('tc1','tc2'); 阅读全文
posted @ 2011-01-04 19:06 Insus.NET 阅读(974) 评论(0) 推荐(3) 编辑
摘要: 表表达式是一种命名的查询表达式,代表一个有效的关系表。可以像其他表一样,在数据处理语句中使用表表达式。Microsoft SQL Server支持4种类型的表表达式:派生表(Derived table)、公用表表达式(CTE, common table expression)、视图(Views),以及内联表值函数(inline TVF, inline table-valued function)。再加上今天看书,书中有提及,有关表表达式如何有效定义任何类型的表表达式,查询语句必须满足三个要求:1. 不保证有一定的顺序。表表达式代表的是一个表,而关系表中的行是没有固定的顺序的。2. 所有的列必须 阅读全文
posted @ 2011-01-04 17:49 Insus.NET 阅读(427) 评论(0) 推荐(2) 编辑
摘要: SQL Server的集合运算有先后顺序,INTERSEC运算比UNION和EXCEPT运算优先,而UNION与EXCEPT运算是同级运算,同级运算是按照从左到右顺序依次运算。当需要控制集合运算顺序时,可以使用圆括号,因为它具有最高的优先级。 阅读全文
posted @ 2010-12-31 19:03 Insus.NET 阅读(750) 评论(1) 推荐(2) 编辑
摘要: INTERSECT 交集集合运算,把集合共同拥有的记录返回来。为了演示,首选创建两个变量表,并插入数据:第一个表:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->DECLARE@T1ASTABLE(ColName1NVARCHAR(50),ColName2NVARCHAR(50))INSERTINTO@T1VALUES('tc1','tc2');INSERTINTO@T1VALUES('tc3 阅读全文
posted @ 2010-12-31 18:54 Insus.NET 阅读(856) 评论(1) 推荐(2) 编辑
摘要: UNION是并集,是把两个集合中所有元素的集合。集合运算有两个选项,即是DISTINCT和ALL, 当您使用 UNION时,也等于UNION DISTINCT,这个选项的结果,是消除重复的记录行,返回一个集合。而后者UNION ALL则是返回多集中所有记录行。下面演示UNION(DISTINCT),为了演示,首选创建两个变量表,并插入数据:第一个表:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->DECLARE@T1ASTABLE(Col 阅读全文
posted @ 2010-12-31 18:24 Insus.NET 阅读(457) 评论(1) 推荐(2) 编辑
摘要: SQL Server SELECT语句,逻辑处理顺序,虽然SELECT位于语句最前面,它在逻辑处理中,基本上是最后一个被执行的部分。下面列出查询子句在逻辑上处理顺序:1. FROM2. WHERE3. GROUP BY4. HAVING5. SELECT6. ORDER BY 阅读全文
posted @ 2010-12-31 16:12 Insus.NET 阅读(430) 评论(1) 推荐(2) 编辑
摘要: INFORMATION_SCHEMA视图可以检索数据库中的对象的元数据。您可以直接在当前实例的数据库调用需求的数据。另外值得称好的是,在SQL 2005和SQL 2008这些Information Schema views符合ISO标准。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SELECT*FROMINFORMATION_SCHEMA.CHECK_CONSTRAINTS COLUMN_DOMAIN_USAGE COLUMN_PRI 阅读全文
posted @ 2010-12-31 13:33 Insus.NET 阅读(1369) 评论(1) 推荐(2) 编辑
摘要: 以前曾经在asp.net实现记录排序功能,参考:http://www.cnblogs.com/insus/articles/1406440.html前端实现,写得很复杂。现在,把它改为触发器来实现,那就简单多了。由于时隔已久,原实例样版代码已经找不到了,只有再写一样功能一样的表。这个表实现与记录插入功能,可以参考相关链接:http://www.cnblogs.com/insus/articles/1921391.htmlhttp://www.cnblogs.com/insus/articles/1921465.htmlhttp://www.cnblogs.com/insus/articles/ 阅读全文
posted @ 2010-12-31 10:57 Insus.NET 阅读(1237) 评论(1) 推荐(2) 编辑
摘要: 对于例子http://www.cnblogs.com/insus/articles/1921465.html写的触发器有bug,当使用http://www.cnblogs.com/insus/articles/1921618.html例子中的INSERT VALUES的语法头两种插入记录时,[Num]字段只做更第一笔,其他[Num]值均为NULL,解决办法,只好修改触发器,代码如下,代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETA 阅读全文
posted @ 2010-12-30 18:06 Insus.NET 阅读(588) 评论(0) 推荐(2) 编辑
摘要: 在http://www.cnblogs.com/insus/articles/1921391.html这个例子,我们创建了一个表,现在来演示SQL Server的INSERT VALUES语法,如果使用INSERT早期语法,插入十笔记录,代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->INSERTINTO[dbo].[OrderDemo]([Name])VALUES('Title1');INSERTINTO[dbo].[O 阅读全文
posted @ 2010-12-30 13:18 Insus.NET 阅读(1608) 评论(1) 推荐(2) 编辑
摘要: 上一个例子http://www.cnblogs.com/insus/articles/1921391.html中,触发器写得有点不好,因为没有考虑到主键值是自动增长的,如果出现有记录被删除了,这个[Num]字段值就不能顺序排列了,会出现空缺。因此需要修改一下这个触发器(TRIGGER),代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->IFEXISTS(SELECT[name]FROMsysobjectsWHERE[name]='t 阅读全文
posted @ 2010-12-30 10:49 Insus.NET 阅读(494) 评论(1) 推荐(2) 编辑
摘要: 下面表[OrderDemo]有一个字段[Num],此字段作为排序字段,在插入时它的值为主键一样,但不能设为IDENTITY自动增长,因为它有可能被更新为其它值。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->IFOBJECT_ID('[dbo].[OrderDemo]')ISNOTNULLDROPTABLE[dbo].[OrderDemo]GOCREATETABLE[dbo].[OrderDemo](OrderDemoId 阅读全文
posted @ 2010-12-30 10:10 Insus.NET 阅读(662) 评论(1) 推荐(2) 编辑
摘要: 用户反映,系统操作日志会使用数据库快速增大,情况可参考下图,问题分析,整个系统每个页面,都有写记录用户操作代码,修改或禁用这个代码,看来是不可能的。在原有系统参数表添加一个选项,可以让管理员可选项,“是否启用操作日志”。这样子,就可以更改操作记录的存储过程,代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERPROCEDURE[dbo].[usp_Op 阅读全文
posted @ 2010-12-29 10:12 Insus.NET 阅读(534) 评论(1) 推荐(2) 编辑
摘要: 自定义函数(User-Defined Function)有两种,一种是标量UDF(Scalar-valued Functions)和表值UDF(Table-valued Functions),前者只返回单个数据值,而后者则返回一个表。前面演示了标量自定义函数,http://www.cnblogs.com/insus/articles/1918983.html ,现在下面两个实例均演示表值自定义函数,代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-- 阅读全文
posted @ 2010-12-28 19:19 Insus.NET 阅读(1344) 评论(0) 推荐(2) 编辑
摘要: 自定义函数(User-Defined Function)有两种,一种是标量UDF(Scalar-valued Functions)和表值UDF(Table-valued Functions),前者只返回单个数据值,而后者则返回一个表。下面示例是,是属于前者,返回单个值。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEFUNCTION[dbo].[ 阅读全文
posted @ 2010-12-28 19:09 Insus.NET 阅读(1633) 评论(0) 推荐(2) 编辑
上一页 1 ··· 76 77 78 79 80 81 82 83 84 ··· 94 下一页