如何定义TABLE类型
请问在存储过程中,如何定义一个TABLE类型.把资料放入内面,然后UPDATE他? 问题点数:0、回复次数:6Top
1 楼good2speed(Goodspeed)回复于 2004-12-01 09:59:21 得分 0
DECLARE
< table_type_definition > ::=
TABLE ( { < column_definition > | < table_constraint > } [ ,...]
)
< column_definition > ::=
column_name scalar_data_type
[ COLLATE collation_ name ]
[ [ DEFAULT constant_expression ] | IDENTITY [ ( seed , increment ) ] ]
[ ROWGUIDCOL ]
[ < column_constraint > ]
< column_constraint > ::=
{ [ NULL | NOT NULL ]
| [ PRIMARY KEY | UNIQUE ]
| CHECK ( logical_expression )
}
< table_constraint > ::=
{ { PRIMARY KEY | UNIQUE } ( column_name [ ,...] )
| CHECK ( search_condition )
}
Top
2 楼LBYYBL(o_o)回复于 2004-12-01 10:02:44 得分 0
declare @table2 table(mobile varchar(100),fee int,k int)
insert into @table2
select '13800000000',10,1
union all select '13900000000',15,7Top
3 楼hnman2000(七匹狼)回复于 2004-12-01 10:08:53 得分 0
问题是我的fields的名字都是要动态定义的.Top
4 楼yzh315(yzh)回复于 2005-04-25 15:40:29 得分 0
我也遇到这个
当fields 是动态的问题
关注Top
5 楼talantlee(小刀(bluedagger.cn))回复于 2005-04-25 16:32:58 得分 0
请问在存储过程中,如何定义一个TABLE类型.把资料放入内面,然后UPDATE他?
-------不如建立一個虛擬表,因為在存儲過程執行執行完後,他也會自動刪除的,這樣和你定義表變量一樣.
假如你想把結果保存在一個實表參照
----create by talantlee
----4/19/05
----user:建立新表
---not yet
CREATE PROCEDURE newtable
@tablename nvarchar(100)
AS
exec('if exists(select * from sysobjects where name= '+@tablename+' and xtype=''U'''
+'drop table '+ @tablename)
exec('create table '+@tablename +'(a int,b int) '
+' update '+@tablename+' set a=b ')
GO
Top
6 楼gotocool(跑)回复于 2005-04-25 17:23:03 得分 0
declare @table tableTop




