一个程序用相同的数据,在2000 和2005下跑出来的结果不一样。
涉及临时表(SELECT ...INTO #temp, ##temp2...),
然后用临时表的数据update一个表(UPDATE ...FROM #TEMP ... WHERE ....使用了RTRIM RIGHT CAST等sql函数)。
但是在2005下update显示的处理记录比2000下要多很多?
可能是什么原因呢?
涉及临时表(SELECT ...INTO #temp, ##temp2...),
然后用临时表的数据update一个表(UPDATE ...FROM #TEMP ... WHERE ....使用了RTRIM RIGHT CAST等sql函数)。
但是在2005下update显示的处理记录比2000下要多很多?
可能是什么原因呢?
解决方案 »
- 查询分析器里执行delete 中途取消了 记录有被删除吗?
- 一条关于SQL的语句。请大家解答一下!
- 如何编写:从一个表中统计同一个数据,减去另一个表中统计的数据
- sql语句问题,详情请进。
- 专家们讨论一下关于左连接on后面的约束条件和where后面的有什么不同?
- 难度系数 >8 的SQL语句 ! 高手帮忙 删除重复,合并总数
- 一个关于表建索引的问题,不知道应怎么建好???
- 各位高手!这是个BEGINNER的问题,
- 急!!!怎样实现在触发器中更新另一个数据库中的数据(sql server)
- 请教:我用SqlServer+asp要做个工资管理的程序,可以让用户定义工资的项目(如总工资=底薪+提成-餐费+。。。),那是不是就是让用户来定义添加字段,不知这样想是否正确?通常这类情况该怎么做呢?
- 程序执行存储过程的问题,我的问题还是数据库的问题??
- MSSQL 2008 无法启动数据库复制任务
mTempTable := '#BOMB05_'+FORMATDATETIME('hhnnsszzz',now());
mTempTable2 := '#BOMB05B_'+FORMATDATETIME('hhnnsszzz',now());
--2 select/insert into mTempTable ,mTempTable2 ... (略)--3 UPDATE(问题出在这里↓)
mSQL:=' UPDATE $$INVMB SET MB026=RIGHT(''00''+RTRIM(CAST(LEVEL AS Char(2))),2) '+#13+
' FROM '+mTempTable3+
' WHERE MB001=ITEM ';
mSQL := mSQL + ' AND MB026 <> RIGHT(''00''+RTRIM(CAST(LEVEL AS CHAR(2))),2) '
发现:把这句' AND MB026 <> RIGHT(''00''+RTRIM(CAST(LEVEL AS CHAR(2))),2) '去掉的话,2000下,update的笔数与2005下加这句话时相同-->也就是说这句话在2005下没起作用!
为什们?这就是问题的关键。