【转】关于SQL Server2005主键和聚簇索引设置的问题
小弟想问个问题,在SQL Server 2005上,建立主键的同时就会默认在主键上设置聚簇索引,那么能否在一个字段上设置主键和唯一性索引(Unique),但是把聚簇索引设置到另一个字段上?
举个简单的例子,比如我有个表叫TableTest,表里有两个字段,id,date,本来id是主键的,我现在想把聚簇索引设置到date字段上。
我先删除主键上的聚簇索引,数据库提示操作不成功,因为受到了主键的约束。
然后我首先在id字段上删除主键,然后在date字段上设置聚簇索引,在id字段上设置唯一索引,再在id上设置主键,则数据库提示将删除date字段上的聚簇索引和id字段上的唯一性索引。
所以想请教一下各位大大,有什么办法能既在id上设置主键,又在date上设置聚簇索引,还是SQL Server就不支持这种设置,谢谢您了
------------------------------------------------------
create table TableTest (
id int identity,
d_date datetime,
primary key nonclustered (id),
unique clustered (d_date)
)
http://www.javaeye.com/problems/14143
相关文档:
select * into destTbl from srcTbl
insert into destTbl(fld1, fld2) select fld1, 5 from srcTbl
以上两句都是将 srcTbl 的数据插入到 destTbl,但两句又有区别的:
第一句(select into from)要求目标表(destTbl)不存在,因为在插入时会自动创建。
第二句(insert into select from)要求目标表(dest ......
数学函数:
1.绝对值
S:SELECT abs(-1) value
O:SELECT abs(-1) value from dual
2.取整(大)
S:SELECT ceiling(-1.001) value
O:SELECT ceil(-1.001) value from dual
3.取整(小)
S:SELECT floor(-1.001) value
O:SELECT floor(-1.001) value from dual
4.取整(截取)
S:SELECT cast(-1.002 as int) value
O ......
一般的公司通常会在他们的信息系统架构中引入多种数据库平台,同时引入三到四种不同的RDBMS解决方案的中大型公司也并不少见,当然这些公司里面的DBA们通常也需要同时拥有管理多种不同平台的技能了。
只在一种平台上展开工作的数据库专家们也通常会期待着在他们的下一份工作中能学到点不一样的东西,那些有勇气的人们则愿意 ......
select * from tt t inner loop join ss s with(nolock) on s.c=t.c
使用 nested join
select * from tt t inner merge join ss s with(nolock) on s.c=t.c
使用 merge join
select * from tt t inner hash join ss s with(nolock) on s.c=t.c
使用 hash jion
&n ......
(适用 SQL Server 2005 其他版本)
收藏
SQL Server 2005 Express 是微软提供的数据库的低端解决方案,
可免费任意随产品分发, 可以在XP等非专业服务器系统下安装, 还可以远程访问, 对于小型数据应用程序已足够满足数据使用要求.
默认安装下,SQL Server ......