<ASP.NET>SQL SERVER 默认主键,默认了聚簇索引

原创 2012年03月22日 20:39:51

从我的网易博客移动。。。。。


SQL SERVER 如果在建表的时候建立了主键,没有建立聚簇索引,那么久默认了主键是聚簇索引。坑爹啊。这样,这么重要的聚簇索引就到了主键上了。要修改麻烦死了。。

研究了半天,发现有两种方法:


首先说下我建立的表:

 

  

订单详情 T_DetailOrder

字段名称

说明

数据类型

主键

DO_ID

主键

Bigint

O_ID

订单号

Bigint

 

Mname

菜名

Nvarchar(20)

 

Mprice

价格

Float

 

 

 

 

 

为订单详情做O_ID的聚簇索引。

第一种建聚簇索引的方法:

 

删除表后重新建立表: 

直接在建立的时候建立聚簇索引

 
create table T_DetailOrder ( 
 DO_ID Bigint identity, 
 O_ID Bigint, 
    Mname Nvarchar(20),
    Mpirce float,
 primary key nonclustered (DO_ID), 
 unique clustered (O_ID) 
)


第二种方法:
由于有主键,默认主键为聚簇索引,删除主键上的聚簇索引失败。只有先删除主键,再建立主键,然后建立聚簇索引。

 

获得表的主键 :exec   sp_pkeys  T_DetailOrder,得到主键为PK_T_DetailOrder

删除主键:alter table T_DetailOrder DROP  CONSTRAINT PK_T_DetailOrder

建立主键和聚簇索引:

Alter table T_DetailOrder add CONSTRAINT PK_T_DetailOrder PRIMARY KEY nonclustered (DO_ID)
create clustered index O_IDindex on  T_DetailOrder(O_ID)
 


 

这样,就建立好O_ID的索引了。。坑爹的SQL SERVER 。。。。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【转】关于SQL Server2005主键和聚簇索引设置的问题

小弟想问个问题,在SQL Server 2005上,建立主键的同时就会默认在主键上设置聚簇索引,那么能否在一个字段上设置主键和唯一性索引(Unique),但是把聚簇索引设置到另一个字段上? 举个简单的...

asp.net调用sql server存储过程的实例

存储过程,想必有过面试经验的挨踢男都被问到过,刚找工作的时候老被问到存储过程,学的时候我也是一知半解,回答自然好不到哪去。不知不觉已经敲了一年半的代码了,一直以为自己是个菜鸟,今天突然在一个群看到有个...

ASP.NET、OWC 和 SQL Server 2000 Analysis Services 构建了基于 Web 的 OLAP 报表应用

摘要   许多机构都使用在线分析处理(OLAP)技术分析其关键业务数据。基于 OLAP 的数据钻取为查询多维数据集以及通过钻取数据来获得模式提供了一种途径。ASP.NET 和 Microsoft Of...

ASP.NET如何存取SQL Server数据库图片(转)

SQL Server提供了一个特别的数据类型:image,它是一个包含binary数据的类型。下边这个例子就向你展示了如何将文本或照片放入到数据库中的办法。在这篇文章中我们要看到如何在SQL Serv...

在ASP.NET中使用SQL Server作为数据库,DB First方式使用EF(EntityFramework)进行开发和部署时的connectionString

这个问题困扰了我一个下午,项目采用的是VS2015,DB使用的是SQL Server2014. 在项目中生成EF时(*.edmx),因为是本机数据库,当时选择的是windows的连接方式,这样生成了...

asp.net中Excel导入sql server数据库

**.aspx页面: 代码:                       ...

ASP.net连接SQL Server(学习记录)

使用SqlConnection对象连接SQL Server数据库  我们可以用SqlConnection()构造函数生成一个新的SqlConnection对象。这个函数是重载的,即我们可以调用构造函数...

SQL Server 2005安装时需要64位的ASP.Net才能安装

SQL Server 2005安装时提示:ASP.Net版本注册要求 32位的ASP.Net已注册,需要64位的ASP.Net才能安装Microsoft Reporting services 2005...

C#数据库数据导入导出系列之一 ASP.NET Excel导入Sql Server数据库

C#数据库数据导入导出系列之一 ASP.NET Excel导入Sql Server数据库 在日常的项目中,Excel,Word,txt等格式的数据导入到数据库中是很常见的,我在这里做一下总结 ...

Insert, Update, Delete in ASP.NET Gridview, DataSource as SQL Server, MS Access (mdb/accdb), XML and

This demo is a continuation of my previous example “Binding GridView with Data”. If you are not fami...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)