首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL server 2008创建视图的有关问题

2012-12-16 
SQL server 2008创建视图的问题CREATE VIEW 三建_SPJ (SNO,PNO,QTY)AS SELECT SNO,PNO,QTYFROM SPJWHERE J

SQL server 2008创建视图的问题

CREATE VIEW 三建_SPJ (SNO,PNO,QTY)
AS SELECT SNO,PNO,QTY
FROM SPJ
WHERE JNO=(SELECT JNO
FROM J
WHERE JNAME='三建');
第一行显示错误“语法错误,CREATE VIEW必须是批处理中仅有的语句”,请问该怎样创建视图?
[最优解释]
CREATE VIEW 三建_SPJ (SNO,PNO,QTY)
AS SELECT SNO,PNO,QTY
    FROM SPJ
    WHERE JNO in (SELECT JNO
                FROM J
                WHERE JNAME='三建');

把=改为 in ,双击错误看看是否有其它字符
[其他解释]
或者试试:
GO
CREATE VIEW 三建_SPJ (SNO,PNO,QTY)
 AS SELECT SNO,PNO,QTY
     FROM SPJ
     WHERE JNO In (SELECT JNO   --这里改成IN比较安全,如果保证只有一条,那么用等号也可以
                 FROM J
                 WHERE JNAME='三建');
[其他解释]
CREATE VIEW 三建_SPJ
AS SELECT SNO,PNO,QTY    
FROM SPJ  
WHERE JNO=(SELECT JNO               
 FROM J               
 WHERE JNAME='三建');
[其他解释]
视图名不需要指定列名
CREATE VIEW 三建_SPJ 
 AS
     SELECT  SNO ,
             PNO ,
             QTY
     FROM    SPJ
     WHERE   JNO = ( SELECT  JNO
                     FROM    J
                     WHERE   JNAME = '三建'
                   ) ;

[其他解释]
 有可能是编辑器的问题,你COPY内容到记事看看是否显示正常
[其他解释]
除了3楼大版说的,另外是否还有上下问,有其他的SQL代码?不然不应该报错。
[其他解释]
是否还有上下文,6楼打错字了。
[其他解释]
引用:
或者试试:
GO
CREATE VIEW 三建_SPJ (SNO,PNO,QTY)
 AS SELECT SNO,PNO,QTY
     FROM SPJ
     WHERE JNO In (SELECT JNO   --这里改成IN比较安全,如果保证只有一条,那么用等号也可以
                 FROM J


                 WHERE JNAM……



[其他解释]
谢谢各位,是我犯了个很傻的错误,执行的时候,默认是在master数据库下,而不是我建的数据库,导致了这个错误,再次谢谢各位的解答!

热点排行