1樓:網友
看一下sql server的聯機幫助,你那樣的用法不能重新命名索引。
語法:sp_rename [ objname = object_name' ,newname = new_name' [objtype = object_type' ]
引數: @objname = object_name'
使用者物件或資料型別的當前限定或非限定名稱。如果要重新命名的物件是表中的列,則 object_name 的格式必須是 。如果要重新命名的對巧答象是索引,森高則 object_name 的格式必須是 。
只有在指定了合法的物件時才必須使用引號。如果提供了完全限定名稱,包括資料庫名稱,則該資料庫名稱必須是當前資料庫的名稱。object_name 的資料型別為 nvarchar(776),無預設值。
newname = new_name'
指定物件的新名稱。new_name 必須是名稱的一部分,並且必須遵孝春慧循識別符號的規則。newname 的資料型別為 sysname,無預設值。
注意: 觸發器名稱不能以 # 或 ## 開頭。
objtype = object_type'
要重新命名的物件的型別。object_type 的資料型別為 varchar(13),預設值為 null,可取下列值之一。
column
要重新命名的列。
database
使用者定義資料庫。重新命名資料庫時需要此物件型別。
index使用者定義索引。
object
在 中跟蹤的型別的專案。例如,object 可用於重新命名約束(check、foreign key、primary/unique key)、使用者表和規則等物件。
userdatatype
通過執行 create type 或 sp_addtype 新增別名資料型別或 clr 使用者定義型別。
示例:重新命名索引:
以下示例將 ix_productvendor_vendorid 索引重新命名為 ix_vendorid。
use adventureworks;
goexec sp_rename n'', n'ix_vendorid', n'index';go
2樓:網友
索引是不可更改的,想更改必須刪除重新建。
3樓:羽益
未能找到名為 'i_t_score' 的項。
不是說了嗎?
sql問題,索引的修改。alter index語句如何使用,謝謝
4樓:網友
修正一下,alter index語法,不能用於修改索引定義,如新增或刪除列,或更改列的順序。
5樓:射手幽靈伊
直接刪除,然後重建吧。
6樓:
索引只能在企業管理器中修改。
sql在設定約束和索引時,有時會取個名字,請問這個名字是幹嘛用的?怎麼使用?它存在**了?
7樓:匿名使用者
給約束取名字, 目的是將來你可以比較容易的刪除掉。
否則你要自己去查詢資料字典表。
例如下面的例子。
唯一約束的名字, 是 t_123, 那麼當我不需要這個約束的時候。
如果我知道名字, 那麼可以直接去刪除掉。
建立測試表。
create table test_123 (id int,value varchar(10)go- 建立 unique 約束。
alter table test_123
add constraint t_123 unique (value);
go- 刪除 unique 約束。
alter table [test_123]drop constraint [t_123];
go如果我不指定約束名稱, 例如:
1> alter table test_sub2> add unique (value)3> go
那麼這種情況下, 如果我要刪除這個約束, 就需要去查詢資料字典表。
由於各個資料庫廠商的資料字典表各有不同, 下面簡單列一些常用的資料庫。
oracle 參考 user_constraints 檢視。
sql server
對於 唯一約束, 參考 檢視裡面的 is_unique_constraint = 1 的資料。
對於外來鍵約束,參考 檢視裡面的資料。
對於 check約束, 參考 檢視裡面的資料。
對於 mysql
可以參考 information_ 裡面的資料。
8樓:虎嗅薔薇的李小多
任何物件都有名字,也可以單一的增加或者刪除,都有對應的指令碼。
關於修改sql server2005資料庫的名稱及表名,列名,索引名 修改資料庫名稱a為b: a
9樓:sql的藝術
列名茄殲修改絕對不能使顫衫衝用sp_raname你可以這樣做。
1、select 舊列名1 as 新列名1,舊列名2 as 新列名2,舊列名3 as 新列名3 ..into 新表名 from 表名塌凳。
2、drop table 表名。
索引,需要重新建立。
10樓:網友
exec sp_rename 'table_name', newtablename'猛蠢簡 重命枝褲名錶檔皮。
exec sp_rename 'table_', newcolname', column' 重新命名列。
sql中索引改名為什麼要加exec,改索引名的命令是exec sp_rename但是不打exec也好使,那exec的作用是什麼
11樓:9陳通
exec 是標準執行語句。
在exec後面還可以跟很多東西的,比如說儲存過程名稱,不如說還可以執行乙個拼接的sql語句。
例如:exec 'select * from 表 where 條件'
注意我這個查詢語句是用引號引起來的。
如何重建sql索引 要具體的命令
12樓:網友
create index index_nameontable_name | view_name(colume_name[1,,,n])
index_name 是索引名稱。
table_name|view_name 是表的名稱或檢視名稱。
colume_name是表或檢視的哪些列上建索引。
13樓:網友
1:你可以建立乙個表,儲存重建的表名和索引鍵。
2:建立儲存過程 迴圈重建表的索引,dbcc indexdefrag (資料庫名,' 表名','索引鍵 )
sql server 查詢語句 索引轉換成對應的名稱
14樓:網友
就是join關聯查詢,例如表:
aa(c1,cola)
bb(c2,colb)
cc(col1,col2,c1,c2)
查詢語句可以寫成。
select ,,from cc
left join aa on
left join bb on
15樓:網友
你這個不用寫儲存過程呀,連線查詢不就搞定了。
select id, col0, col1 , type] as col2 from [testtable] left join [type] on [testtable].col2 = [type].[id].
用sql語句 sp_rename 怎樣將儲存過程重新命名?
16樓:匿名使用者
sp_helptext 'newname' 執行上面的系統儲存過程,會發現,原始定義並沒有被改名。所以用sp_rename去改儲存過程是不可靠的。
17樓:匿名使用者
sp_rename 'proc_getstudent_3','newname'
參考語法。sp_rename [ objname = ] 'object_name' , newname = ] 'new_name'
objtype = ] 'object_type' ]
引數[@objname =] 'object_name'
是使用者物件(表、檢視、列、儲存過程、觸發器、預設值、資料庫、物件或規則)或資料型別的當前名稱。如果要重新命名的物件是表中的一列,那麼 object_name 必須為 形式。如果要重新命名的是索引,那麼 object_name 必須為 形式。
object_name 為 nvarchar(776) 型別,無預設值。
newname =] 'new_name'
是指定物件的新名稱。new_name 必須是名稱的一部分,並且要遵循識別符號的規則。newname 是 sysname 型別,無預設值。
objtype =] 'object_type'
是要重新命名的物件的型別。object_type 為 varchar(13) 型別,其預設值為 null,可取下列值。
SQL建立索引的目的是什麼
一 sql建立索引的目的如下 1 通過唯一性索引 unique 可確保資料的唯一性 2 加快資料的檢索速度 3 加快表之間的連線 4 減少分組和排序時間 5 使用優化隱藏器提高系統效能。二 建立sql索引的語法 create unique clustered nonclustered 索引型別 in...
SQL遊標如何使用,SQL遊標怎麼用
遊標可以從資料庫中查詢出一個結果集,在你關閉它之前,你可以反覆使用這個結果集,讀取這個結果集中的任意行任意欄位的內容,一般在儲存過程或前臺程式中常見。你學過fox嗎?可以說是和那個裡面的差不多吧,就是一個意思 遊標可以從庫裡的結果集裡面取東西,一條一條的 在sql指令碼中怎麼使用遊標?declare...
sql語句分組查詢前10條資料,sql如何實現分組並select出每組前10個
class classid classnameproduct classid proname numselect top 10 c.classid c.classname,sum p.num from class c,product p where p.classid c.classid group...