2014-12-04 54 views
3

具有基础SQL 2012数据库的网站:SQL语句已执行但未生效

执行ALTER TABLE以添加列。该网站设置为使用SQL帐户(我们称其为myAccount),并且此帐户为db_owner。

的语句是

ALTER TABLE [ItemType_Website_Settings] ADD [myNumber] INT NULL DEFAULT(0) 

ALTER TABLE语句由SQL事件探查器与BatchCompleted注册。但刷新表格,该列尚未创建。

而且

SELECT t.name AS table_name, 
SCHEMA_NAME(schema_id) AS schema_name, 
c.name AS column_name 
FROM sys.tables AS t 
INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID 
WHERE c.name LIKE 'myNumber' 
ORDER BY schema_name, table_name; 

不给任何记录。

但是: 去SQL Management Studio,使用前面提到的SQL帐户“myAccount”,并从这里执行相同的ALTER TABLE,该列创建就好..?

任何线索?我完全迷失在这里。

Thanx提前为您的输入。

- 已解决 - 事件探查器获得批处理,但它从未承诺过。

问候 莫滕Snedker

+4

您使用的是交易吗? – acostela 2014-12-04 10:41:20

+0

“实现”,伟大的话。 http://www.thefreedictionary.com/effectuated,可能不完全是你的意思,但我明白。 – Jodrell 2014-12-04 10:46:06

+0

表上的任何触发器? – Jodrell 2014-12-04 10:49:03

回答

0

我认为这是未提交的事务,你有后ALTER TABLE语句执行提交您的交易问题。