我有这样一个 过程
ALTER proc pj
@mon datetime(20)
as
set nocount on
begin
declare @sqlstr varchar(200)
select @sqlstr='select * from
openquery(DB2fs,'+'''select deptid,sum(totquantsales) from EM.T_SALES_SALESLIST where businessmonth='+@mon+' group by deptid order by deptid'''+')'
execute(@sqlstr)
end在我执行 EXEC PJ '2007-12-01'的时候总提示@MON参数无效呢.
说明:DB2FS是我在SQLSERVER上建一个联接到DB2的链接服务器
如果不用OPENQUERY我要如何操作我链接服务器中的数据表?
ALTER proc pj
@mon datetime(20)
as
set nocount on
begin
declare @sqlstr varchar(200)
select @sqlstr='select * from
openquery(DB2fs,'+'''select deptid,sum(totquantsales) from EM.T_SALES_SALESLIST where businessmonth='+@mon+' group by deptid order by deptid'''+')'
execute(@sqlstr)
end在我执行 EXEC PJ '2007-12-01'的时候总提示@MON参数无效呢.
说明:DB2FS是我在SQLSERVER上建一个联接到DB2的链接服务器
如果不用OPENQUERY我要如何操作我链接服务器中的数据表?
解决方案 »
- 常用的SQL数据库语句总结
- 一个数据库ED,让ED“分离”和“脱机”有什么区别,这两个SQL语句如何写
- 主从表聚集索引设计问题
- =============带若干参数的模糊查询存储过程
- 再请帮忙看看为什么这个游标总是多执行一次?
- 列名 不明确。
- 求助!从mysql将数据库导入sql server2005失败
- 请教一下这个存储过程怎么写?
- 请问sql2000,这样的程序用什么做的
- 解决不了的话,就得跳楼了!
- 囧.做人失败..连个SQL 都装不上."安装程序配置服务器失败".大家帮帮我吧.
- 选择列表中的列 'URLSpyList.KeyIndex' 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中
select @sqlstr='select * from
openquery(DB2fs,'+'''select deptid,sum(totquantsales) from EM.T_SALES_SALESLIST where businessmonth='''+@mon+''' group by deptid order by deptid'''+')'再加个行不?
服务器: 消息 295,级别 16,状态 3,过程 pj,行 7
从字符串转换为 smalldatetime 数据类型时发生语法错误。
GO
SET ANSI_NULLS ON
GOALTER proc pj
@monn smalldatetime
as
set nocount on
begin declare @sqlstr varchar(200)execute sp_executesql
N'select * from
openquery(DB2fs,''select deptid,sum(totquantsales) from EM.T_SALES_SALESLIST where businessmonth=@mon group by deptid order by deptid'')',
N'@mon smalldatetime',
@mon = @monnendGO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON GO这样写有问题,请楼上兄弟指教一下,