我想用存储过程代码把数据写入到一个建好的表中,怎么办?

chengzl081399 2003-05-21 02:30:16
我自己写了个,但是在查询分析器中提示,表的那些字段无效~
搞不懂了
请教高手
...全文
80 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangxf11 2003-05-22
  • 打赏
  • 举报
回复
你的TDAIF表中有KHDM,KHMC,FQDATE,PINGZH,SHPQTY,DAIF这些列吗,仔细检查
(根据你的错误和#mxz表基本可以肯定没有)
ysynb 2003-05-22
  • 打赏
  • 举报
回复
你连存储过程的语法都没搞懂,还要写存储过程啊?
ldq_pb 2003-05-21
  • 打赏
  • 举报
回复
Invalid column name 'DAIF'.

表中的列名提示错误,请检查,包括类型是否匹配
chengzl081399 2003-05-21
  • 打赏
  • 举报
回复
都没有错啊,我把类型都改成完全一样的,还是提示同样的错误
都是在同一个数据库中
Tigersong 2003-05-21
  • 打赏
  • 举报
回复
同上
joss 2003-05-21
  • 打赏
  • 举报
回复
请检索
1、数据库名是否正确
2、表名是否正确
3、表中的列名提示错误,请检查,包括类型是否匹配
chengzl081399 2003-05-21
  • 打赏
  • 举报
回复
表TDAIF(DKHDM,DKHMC,DRQ,DPZH,DSL,DJE)是建好的

分不够可以再加!!
chengzl081399 2003-05-21
  • 打赏
  • 举报
回复
我把我写的贴出来,帮忙看哈,怎么不对劲呢

CREATE PROCEDURE P_DAIF AS

select dbo.XSSKJLB.CUST_ID,
dbo.XSSKJLB.CUST_NAME,
dbo.XSSKJLB.CHECK_DATE,
dbo.XSSKJLB.SHP_QTY,
dbo.XSSKJLB.NOTAX_CASH,
dbo.FS_GLBatchDetail.TransactionAccount,
dbo.XSSKJLB.CO_NUMBER,
dbo.XSSKJLB.LN_NO,
dbo.XSSKJLB.SHP_NO,
dbo.XSSKJLB.FUBEN_NO,
dbo.XSSKJLB.TOT_CASH,
dbo.FS_GLBatchDetail.TransactionReference4,
dbo.FS_GLBatchDetail.TransactionReference2,
dbo.FS_GLBatchDetail.TransactionReference5,
dbo.FS_GLBatchDetail.TransactionAmount ,
dbo.BZDWCB.sjdwcb
into #t1
from XSSKJLB INNER JOIN
FS_GLBatchDetail ON
FS_GLBatchDetail.TransactionReference2 = XSSKJLB.CO_NUMBER AND
FS_GLBatchDetail.TransactionReference5 = XSSKJLB.LN_NO AND
FS_GLBatchDetail.TransactionReference7 = XSSKJLB.ITEM
inner join
dbo.BZDWCB on
dbo.BZDWCB.bm=XSSKJLB.CP_REF AND
dbo.BZDWCB.ph=XSSKJLB.PH
WHERE (FS_GLBatchDetail.IsTransactionDebitOrCredit = 'C') AND
(XSSKJLB.FUBEN_NO <> '') AND (XSSKJLB.CUST_ID = 'K21249' OR
XSSKJLB.CUST_ID = 'K17113' OR
XSSKJLB.CUST_ID = 'K21892' OR
XSSKJLB.CUST_ID = 'K31076' OR
XSSKJLB.CUST_ID = 'K11084' OR
XSSKJLB.CUST_ID = 'K12032' OR
XSSKJLB.CUST_ID = 'K13013' OR
XSSKJLB.CUST_ID = 'K31037' OR
XSSKJLB.CUST_ID = 'K21863')
select * into #mxz from TDAIF where 1=2

insert into #mxz(KHDM,KHMC,FQDATE,PINGZH,SHPQTY,DAIF)
select CUST_ID,CUST_NAME,CHECK_DATE,FUBEN_NO,sum(SHP_QTY),sum(sjdwcb * SHP_QTY)
from #t1
group by FUBEN_NO

insert into TDAIF(DKHDM,DKHMC,DRQ,DPZH,DSL,DJE)
select KHDM,KHMC,FQDATE,PINGZH,SHPQTY,DAIF
from #mxz
update TDAIF set DKHDM='' where DKHDM is null
update TDAIF set DKHMC='' where DKHMC is null
update TDAIF set DRQ='' where DRQ is null
update TDAIF set DPZH='' where DPZH is null
update TDAIF set DSL='' where DSL is null
update TDAIF set DJE='' where DJE is null


drop table #t1
drop table #mxz
GO
----------------------------------------------
在查询分析器里这样提示:
(所影响的行数为 7435 行)


(所影响的行数为 0 行)

服务器: 消息 207,级别 16,状态 1,过程 P_DAIF,行 41
Invalid column name 'KHDM'.
服务器: 消息 207,级别 16,状态 1,过程 P_DAIF,行 46
Invalid column name 'KHDM'.
服务器: 消息 207,级别 16,状态 1,过程 P_DAIF,行 46
Invalid column name 'KHMC'.
服务器: 消息 207,级别 16,状态 1,过程 P_DAIF,行 46
Invalid column name 'FQDATE'.
服务器: 消息 207,级别 16,状态 1,过程 P_DAIF,行 46
Invalid column name 'PINGZH'.
服务器: 消息 207,级别 16,状态 1,过程 P_DAIF,行 46
Invalid column name 'SHPQTY'.
服务器: 消息 207,级别 16,状态 1,过程 P_DAIF,行 46
Invalid column name 'DAIF'.
------------------------
怎么回事??
iceli 2003-05-21
  • 打赏
  • 举报
回复
使用 insert into 存在的表 select * from 需要查询的表。
当然需要查询的表和存在的表的列名必须一致,否则....

611

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧