IM使用Sybase ASE數據庫,我用下面的SQL數據庫中創建一個視圖:ALTER VIEW在Sybase ASE數據庫
create view dbo.vb_user_list (db_name, user_email, user_sex) as
select 'db01' ,
email,
sex
from db01.dbo.emp_hdr
where enable = 1
union
select 'db02' ,
email,
sex
from db02.dbo.emp_hdr
where enable = 1
這種觀點從表演和DB01 DB02所有的用戶,和它的作品。
但是當我想改變這種看法,顯示從DB03還包括用戶,我做一個SQL象下面這樣:
alter view dbo.vb_user_list (db_name, user_email, user_sex) as
select 'db01' ,
email,
sex
from db01.dbo.emp_hdr
where enable = 1
union
select 'db02' ,
email,
sex
from db02.dbo.emp_hdr
where enable = 1
union
select 'db03' ,
email,
sex
from db03.dbo.emp_hdr
where enable = 1
,但它與下面的錯誤消息:
[ALTER - 0 rows, 0.002 secs] [Code: 102, SQL State: 37000] Incorrect syntax near '('.
我不不明白爲什麼,有人可以幫忙嗎?
如果你只是查詢選擇「DB03」會發生什麼, 電子郵件, 性別 from db03.dbo.emp_hdr where enable = 1 –
@MrSlim只是試過了,沒問題,它的工作原理。 – yab
刪除視圖並創建一個新視圖? – sibert