21 Sep 2006

好像是 sqlserver mangage studio express 的bug

Share

sqlserver 2005 express
使用 sqlserver mangage studio express

创建一个测试用表
CREATE TABLE [dbo].[test](
 [id] [int] IDENTITY(1,1) NOT NULL,
 [name] [varchar](50) COLLATE Japanese_CI_AS NULL
) ON [PRIMARY]

执行 insert test ([name]) values('sdfsdf');  多次。

创建一个存储过程
create PROCEDURE [dbo].[xxx]


AS
update test set [name] = 'aaa' where id =  2


然后

ALTER PROCEDURE [dbo].[xxx]


AS
update testxx32453463465346436x set [name] = 'aaa' where id =  2

竟然不进行语法检查,而且执行成功了

执行被alter过的过程时才会报错误

Msg 208, Level 16, State 1, Procedure xxx, Line 10
对象名  'testxx32453463465346436x ' 无效。


(1 row(s) affected)

comments powered by Disqus