'这样试下
Public Function ConnectString() As String '
ConnectString = "provider=sqloledb.1;data source=192.168.12.XX\sunrise;uid=sa;pwd=XXX;database=db_Sunrise"
End Function
'窗体代码
Dim rs As new adodb.Recordset
rs.Open "execute sp_scjdxx", ConnectString, adOpenKeyset
if rs.RecordCount > 0 then
Set ms.DataSource = rs
end if
Public Function ConnectString() As String '
ConnectString = "provider=sqloledb.1;data source=192.168.12.XX\sunrise;uid=sa;pwd=XXX;database=db_Sunrise"
End Function
'窗体代码
Dim rs As new adodb.Recordset
rs.Open "execute sp_scjdxx", ConnectString, adOpenKeyset
if rs.RecordCount > 0 then
Set ms.DataSource = rs
end if
我在 SQL 查询分析器 可以执行呀
declare @sqls varchar(8000)
select
@sqls=isnull(@sqls+',','')
+'max(case when v_scjdb.daoc='+ ltrim(daoc)+' then v_scjdb.daoc end) as [道次'+ltrim(daoc)+'],'
+'max(case when v_scjdb.daoc='+ ltrim(daoc)+' then v_scjdb.gg end) as [规格'+ltrim(daoc)+'],'
+'max(case when v_scjdb.daoc='+ ltrim(daoc)+' then v_scjdb.zs end) as [支数'+ltrim(daoc)+'],'
+'max(case when v_scjdb.daoc='+ ltrim(daoc)+' then v_scjdb.jdrq end) as [日期'+ltrim(daoc)+']'
from
(select distinct daoc from v_scjdb) ttt
set @sqls='select v_sckhxx.kh as 框号,v_sckhxx.khmc as 客户名称,v_sckhxx.htbh as 合同号,v_sckhxx.gg as 成品规格,v_sckhxx.khrq,'
+@sqls
+' from v_sckhxx,v_scjdb where v_scjdb.kh=v_sckhxx.kh group by v_sckhxx.khrq,v_sckhxx.htbh,v_sckhxx.kh,v_sckhxx.khmc,v_sckhxx.gg'
exec (@sqls)
GO检查语法无错误。在WIN2003 系统下运行无问题,在WIN2008系统呀 运行错误提示如下:
服务器:消息 156,级别 15,状态 1,行1
在关键字 ‘THEN’附近有语法错误。
sql 2000 的版本号就是 8.0 吧?