![](/img/trans.png)
[英]SQL Server Query with variables as MS Access subform record source
[英]When record source of my form in MS Access is on SQL Server, view is not updatable
我已將表單的記錄源設置為SQL Server視圖。 現在當我打開
DoCmd.OpenForm "frmDocuments", WhereCondition:=varWhere
Forms!frmDocuments.SetFocus
它會被打開,但不是可更新的。 我想知道,這正常嗎? 我們在Access窗體中打開的每個視圖都不可更新。
我在網上閱讀,如果我創建唯一索引以供查看,它將可以更新。
現在,當我嘗試使用此代碼在視圖上創建索引時
CREATE UNIQUE CLUSTERED INDEX i_Documents
ON qryDocuments([Owner Document Number])
我得到一個錯誤
“模式綁定”
然后我嘗試使用架構綁定創建視圖,但出現錯誤
無法進行架構綁定視圖“測試”,因為名稱“ tblDiscipline”對於架構綁定無效。 名稱必須采用兩部分格式,並且對象不能引用自身。
我使用的代碼如下:
CREATE VIEW qryDocuments
WITH SCHEMABINDING
AS
SELECT
tblDocuments.[Owner Document Number], tblDocuments.[Sazeh Document
Number],
tblDocuments.[Document Title], tblDocuments.[Project No],
tblDocuments.Originator, tblOriginator.[Originator Des],
tblDocuments.Zone, tblDocuments.Unit, tblDocuments.Discipline,
tblDiscipline.DiscDesc, tblDocuments.[Document Type],
tblDocumentType.[TYPE Description], tblDocuments.SheetNumber
FROM
tblDiscipline
RIGHT JOIN
((tblDocumentType
RIGHT JOIN
tblDocuments ON tblDocumentType.TYPE = tblDocuments.[Document Type])
LEFT JOIN
tblOriginator ON tblDocuments.Originator = tblOriginator.Originator)
ON tblDiscipline.DiscCode = tblDocuments.Discipline
GO
請幫忙-我該如何解決這個問題?
讓我們從格式化文本查詢開始。 請注意,我是如何使用別名的,這大大減少了代碼量,並使查看發生的事情變得容易得多。 這些聯接是另外一回事。 用這種模式將左右聯接組合在一起,表明這是由查詢工具編寫的。
SELECT d.[Owner Document Number]
, d.[Sazeh Document Number]
, d.[Document Title]
, d.[Project No]
, d.Originator
, o.[Originator Des]
, d.Zone
, d.Unit
, d.Discipline
, dis.DiscDesc
, d.[Document Type]
, dt.[TYPE Description]
, d.SheetNumber
FROM tblDiscipline dis
RIGHT JOIN tblDocuments d ON dis.DiscCode = d.Discipline
RIGHT JOIN tblDocumentType dt ON dt.TYPE = d.[Document Type]
LEFT JOIN tblOriginator o ON d.Originator = o.Originator
現在您可以實際讀取此查詢了,錯誤消息已經很清楚了。 具體看這部分。 “名稱必須為兩部分格式”。 如果不指定對象的架構,則無法架構綁定視圖。 您可能需要在此處查看文檔。 https://docs.microsoft.com/zh-cn/sql/t-sql/statements/create-view-transact-sql專門查看有關“可更新視圖”的部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.