SQL2000與SQL2005的差異 虛字段﹑多表關聯后允許更新問題 (望各人達者解惑﹐謝!)

BES 2007-01-02 08:29:34
最近需將在SQL2000中的數據庫遷移到SQL2005中﹐卻出現許多的不兼容問題
1﹕我在SQL2000在的語法﹕
select top 100 percent a.*, cast('' as varchar(50)) as TempCol from tableA a

因為加了top 100 percent﹐所以返回的數據集中所有的字段都是可編輯的(包含TempCol字段)﹐但在SQL2005中就不行

WHY ﹖

2﹕我在SQL2000中的語法﹕
select top 100 percent a.sNo,dbo.fn_NoCntNm(a.sNo) as sName from TableA a
這里的dbo.fn_NoCntNm是一個函數﹐返回的數據集所有字段也是可編輯的﹐但在SQL2005中也不行﹐WHY﹖

3﹕
select a.*,b.ColNm from tableA, tableB b where a.Expr=b.Expr
也有部分字段不能編輯

因為以前一直用SQL Server2000﹐現在轉到SQL2005﹐以前的系統在上述問題的影響下﹐根本上不能用了

SQL2005﹐想說愛你看來真的不容易呀


望各人達者解惑﹐謝!




...全文
487 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiequanqin 2007-01-04
  • 打赏
  • 举报
回复
注意:
当对升级到 SQL Server 2005 的数据库使用 TABLESAMPLE 时,必须将数据库的兼容级别设置为 90。若要设置数据库兼容级别,请参阅 sp_dbcmptlevel (Transact-SQL)。

lovcal 2007-01-04
  • 打赏
  • 举报
回复
呵呵……的确不太明白,什么叫做可编辑的?强烈关注!
Andy__Huang 2007-01-03
  • 打赏
  • 举报
回复
sqlserver2005還是覺得不好用?

不知道有什麼特殊要求和說明,也沒有見相關的支柱文檔?

弘毅致远 2007-01-03
  • 打赏
  • 举报
回复
沙发..5还在用2000.
jacobsan 2007-01-03
  • 打赏
  • 举报
回复
不能编辑是什么意思?
BES 2007-01-03
  • 打赏
  • 举报
回复
感謝各位的關注﹐還是沒找到相關解決辦法

為了項目﹐只好先換種方法先解決﹐上午花了些時間將視圖改為存儲過程﹐幸好當初設計架構時考慮了對不同數據來源方式的支持﹐否則豈是一個慘字了得﹐而是很慘﹑非常慘。。。。

個人估計是SQL Server中如果使用了Top 100 percent它會先在內存在生成一張臨時表﹐然后再輸出(有了臨時表就能確定各字段的類型與長度等等信息了)﹐而在SQL2005中對此作了優化﹐以至于不再支持這種用法了。。。。這只是我的推測而己

望繼續關注與討論

22,302

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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