1.这样跨数据库的存储过程是不是有错? 
--跨库建立没有问题,注意选择你正确的数据库就行了.
2.如果没有错,在什么条件下可以跨数据库读取表建立view? 
-- 在dbo.M_PLACE前面加上对应的数据库名称,
--如: 另外一个数据库名称.dbo.M_PLACE

3.如果有错,是不是“tsuchiya_2”这个数据库必须有“M_PLACE”? 
--不是,参考上问

解决方案 »

  1.   

    1楼不好用。
    出现“无法绑定由多个部分组成的标识符”的错误提示原本的错误提示为“对象名  'dbo.M_PLACE' 无效。”,加上1楼说的东西之后错误就变成“无法绑定由多个部分组成的标识符”
      

  2.   

    FROM  dbo.M_PLACE--
    dbo前加库名如 dbname.dbo.m_place
      

  3.   

    你的数据库是在同一台服务器还是不同的服务器上?
    无法绑定由多个部分组成的标识符
    这个错误是因为你表名写的不正确.

    DB2.dbo.M_PLACE
      

  4.   

    USE [CSDN]
    GO
    if object_id(N'v_test') is not null 
    drop view v_test
    GO
    create view v_test
    as
    select * from master.dbo.sysobjects
    go
      

  5.   

    我就是按照6楼的方式写的如下:
    CREATE VIEW [dbo].[V_PLACE2]
    AS
    /****/SELECT tsuchiya_M.dbo.M_PLACE.*, dbo.M_PLACE_KBN.PLACE_KBN_NAME AS PLACE_KBN_NAME, 
           dbo.M_PLACE_GRP.PLACE_GRP_NAME AS PLACE_GRP_NAME, 
           M_PLACE_GRP.PLACE_GRP_NAME2 AS PLACE_GRP_NAME2, 
           M_PLACE_GRP.PLACE_GRP_NAME3 AS PLACE_GRP_NAME3, 
           M_PLACE1.PLACE_NAME AS PLACE_SUB_NAME, 
           M_PLACE1.PLACE_NAME2 AS PLACE_SUB_NAME2, 
           M_PLACE1.VIEW_CD AS VIEW_CD2
    /****/FROM  tsuchiya_M.dbo.M_PLACE LEFT OUTER JOIN
     /****/     tsuchiya_M.dbo.M_PLACE M_PLACE1 ON 
           dbo.M_PLACE.PLACE_CD_SUB = M_PLACE1.PLACE_CD LEFT OUTER JOIN
           dbo.M_PLACE_GRP ON 
           M_PLACE.PLACE_GRP = dbo.M_PLACE_GRP.PLACE_GRP LEFT OUTER JOIN
        dbo.M_PLACE_KBN ON dbo.M_PLACE.PLACE_KBN = dbo.M_PLACE_KBN.PLACE_KBN一个服务器,多个数据库。
      

  6.   

    CREATE VIEW [dbo].[V_PLACE2]
    AS
    /****/SELECT tsuchiya_M.dbo.M_PLACE.*, dbo.M_PLACE_KBN.PLACE_KBN_NAME AS PLACE_KBN_NAME, 
           dbo.M_PLACE_GRP.PLACE_GRP_NAME AS PLACE_GRP_NAME, 
           M_PLACE_GRP.PLACE_GRP_NAME2 AS PLACE_GRP_NAME2, 
           M_PLACE_GRP.PLACE_GRP_NAME3 AS PLACE_GRP_NAME3, 
           M_PLACE1.PLACE_NAME AS PLACE_SUB_NAME, 
           M_PLACE1.PLACE_NAME2 AS PLACE_SUB_NAME2, 
           M_PLACE1.VIEW_CD AS VIEW_CD2
    /****/FROM  tsuchiya_M.dbo.M_PLACE LEFT OUTER JOIN
     /****/     tsuchiya_M.dbo.M_PLACE M_PLACE1 ON 
           dbo.M_PLACE.PLACE_CD_SUB = M_PLACE1.PLACE_CD LEFT OUTER JOIN
           dbo.M_PLACE_GRP ON 
           M_PLACE.PLACE_GRP = dbo.M_PLACE_GRP.PLACE_GRP LEFT OUTER JOIN
        dbo.M_PLACE_KBN ON dbo.M_PLACE.PLACE_KBN = dbo.M_PLACE_KBN.PLACE_KBN
    这个还会报什么错?
      

  7.   

    全SQL文件18000++行,与我铁的有关的我在贴一遍。
    USE [tsuchiya_2]
    ... ...(其他的)
    ... ...(其他的)
    GO
    /****** オブジェクト:  View [dbo].[V_PLACE2]    スクリプト日付: 07/14/2008 11:33:47 ******/
    IF  EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[V_PLACE2]'))
    DROP VIEW [dbo].[V_PLACE2]
    ... ...(其他的)... ...(其他的)
    GO
    /****** オブジェクト:  View [dbo].[V_PLACE2]    スクリプト日付: 07/14/2008 11:33:47 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[V_PLACE2]'))
    EXEC dbo.sp_executesql @statement = N'
    /****** オブジェクト :  ビュー dbo.V_PLACE2    スクリプト日付 : 2008/06/17 14:04:48 ******/CREATE VIEW [dbo].[V_PLACE2]
    AS
    SELECT tsuchiya_M.dbo.M_PLACE.*, tsuchiya_M.dbo.M_PLACE_KBN.PLACE_KBN_NAME AS PLACE_KBN_NAME, 
           dbo.M_PLACE_GRP.PLACE_GRP_NAME AS PLACE_GRP_NAME, 
           M_PLACE_GRP.PLACE_GRP_NAME2 AS PLACE_GRP_NAME2, 
           M_PLACE_GRP.PLACE_GRP_NAME3 AS PLACE_GRP_NAME3, 
           M_PLACE1.PLACE_NAME AS PLACE_SUB_NAME, 
           M_PLACE1.PLACE_NAME2 AS PLACE_SUB_NAME2, 
           M_PLACE1.VIEW_CD AS VIEW_CD2
    FROM  tsuchiya_M.dbo.M_PLACE LEFT OUTER JOIN
          tsuchiya_M.dbo.M_PLACE M_PLACE1 ON 
           dbo.M_PLACE.PLACE_CD_SUB = M_PLACE1.PLACE_CD LEFT OUTER JOIN
           dbo.M_PLACE_GRP ON 
           M_PLACE.PLACE_GRP = dbo.M_PLACE_GRP.PLACE_GRP LEFT OUTER JOIN
        dbo.M_PLACE_KBN ON dbo.M_PLACE.PLACE_KBN = dbo.M_PLACE_KBN.PLACE_KBN
      

  8.   

    你这个查询能够在查询分析器里面执行么?
    USE [tsuchiya_2]
    GO
    SELECT tsuchiya_M.dbo.M_PLACE.*, tsuchiya_M.dbo.M_PLACE_KBN.PLACE_KBN_NAME AS PLACE_KBN_NAME, 
           dbo.M_PLACE_GRP.PLACE_GRP_NAME AS PLACE_GRP_NAME, 
           M_PLACE_GRP.PLACE_GRP_NAME2 AS PLACE_GRP_NAME2, 
           M_PLACE_GRP.PLACE_GRP_NAME3 AS PLACE_GRP_NAME3, 
           M_PLACE1.PLACE_NAME AS PLACE_SUB_NAME, 
           M_PLACE1.PLACE_NAME2 AS PLACE_SUB_NAME2, 
           M_PLACE1.VIEW_CD AS VIEW_CD2
    FROM  tsuchiya_M.dbo.M_PLACE LEFT OUTER JOIN
          tsuchiya_M.dbo.M_PLACE M_PLACE1 ON 
           dbo.M_PLACE.PLACE_CD_SUB = M_PLACE1.PLACE_CD LEFT OUTER JOIN
           dbo.M_PLACE_GRP ON 
           M_PLACE.PLACE_GRP = dbo.M_PLACE_GRP.PLACE_GRP LEFT OUTER JOIN
        dbo.M_PLACE_KBN ON dbo.M_PLACE.PLACE_KBN = dbo.M_PLACE_KBN.PLACE_KBN
      

  9.   

    *.SQL文件不就是在查询分析器里面执行么?????已经出错了,你说能不能执行。。
      

  10.   

    1.我没有想学数据库,只是想要个答案告诉给我文件的人,即使*.sql文件时自动生成的也会出错。
    2.谢谢给我答案的人,但是现在仍旧有错,不是抬杠,是真的错。
    3.不怀疑你们的能力,可能使这个数据库过于复杂,而这个论坛的种种发贴限制导致我不能上传或者发布更多的有用信息,导致你们现在比较糊涂我说的是什么4.帮帮我吧。
      

  11.   

    1.一直都在查询分析器里面执行
    2.没有修改之前报的错误为“对象名  'dbo.M_PLACE' 无效。”
    3.按照“和尚”给的建议修改之后的错误为“无法绑定由多个部分组成的标识符”
    4.感谢真诚回答我问题的前辈~
    5.问题没有解决,以后在网上搜到这个帖子的人,察看该贴时仅供参考
    6.在此感谢“和尚兄”不厌其烦的解释和帮助~!加好友了!
    7.讨厌北京人的“丫”,比东北的“他妈的”还难听!
      

  12.   

    http://www.dullwolf.cn/Chess/ 和我下盘棋