恳请高手改一语句语法,,,小妹感激不尽---一定在线给分
select @sql_str = 'select user_id, user_name, manager_id'
+ ' FROM @achievement_rec'
select @tmp_str = 'insert into OPENROWSET('+char(39)+'Microsoft.Jet.OLEDB.4.0'+char(39)+','
+ char(39)+ @new_file + char(39)
+ ';'+char(39)+'admin'+char(39)
+ ';'+char(39)+''+char(39)
+ ', av_achievement_rec) (user_id, user_name, manager_id)'
+ @sql_str
execute (@tmp_str)
问题是出现在+ ' FROM @achievement_rec'--------这里是不能跟临时表,,还是语法有错呢,,教教我呀
问题点数:40、回复次数:13Top
1 楼jinjazz(近身剪)回复于 2005-02-22 11:02:14 得分 0
@achievement_r 是什么??Top
2 楼yolanda520(坠落天使)回复于 2005-02-22 11:04:13 得分 0
是临时表呀!!救我Top
3 楼jinjazz(近身剪)回复于 2005-02-22 11:07:48 得分 0
临时表是#或者##Top
4 楼yolanda520(坠落天使)回复于 2005-02-22 11:09:32 得分 0
declare @achievement_rec table
(user_id nvarchar(20), user_name nvarchar(80), manager_id nvarchar(20)
我是这样定义的呀 以前其他都可以用的呀
Top
5 楼lxysjl(流星雨)回复于 2005-02-22 11:09:34 得分 0
是啊Top
6 楼lanfanghelanfanghe(眉飞色舞)回复于 2005-02-22 11:11:09 得分 0
好像变量不能当表名Top
7 楼jinjazz(近身剪)回复于 2005-02-22 11:14:05 得分 20
set @sql_str='declare @achievement_rec table (user_id nvarchar(20), user_name nvarchar(80), manager_id nvarchar(20) '
set @sql_str =@sql_str + 'select user_id, user_name, manager_id'
+ ' FROM @achievement_rec'
....Top
8 楼yolanda520(坠落天使)回复于 2005-02-22 11:15:10 得分 0
哦 大家发表一下意见呀
要怎么解决呢?Top
9 楼aw511(点点星灯)回复于 2005-02-22 11:15:30 得分 10
declare @achievement_rec table
(user_id nvarchar(20), user_name nvarchar(80), manager_id nvarchar(20)
这样单独用是没有问题的
但你在这里不可以当成变量来用的.换一种方式吧Top
10 楼EastboyEastboy(workboy)回复于 2005-02-22 11:22:06 得分 5
你的语法有误,将你的表数据类型的变量定义在字符串中Top
11 楼631799(杭州工人)回复于 2005-02-22 11:29:06 得分 5
加下面这个试试呢?
SET NOCOUNT ON
SET FMTONLY OFF
。。。
。。。Top
12 楼yolanda520(坠落天使)回复于 2005-02-22 11:32:48 得分 0
好了 解决了 特别谢谢 jinjazz(近身剪(N-P攻略))Top
13 楼yolanda520(坠落天使)回复于 2005-02-22 11:33:26 得分 0
立刻给分Top




