我在 MS Access 環境中使用 SQL 直通到 SQL Server 查詢。我在 Access 表單中顯示查詢結果,并在文本框中對其執行顯示計算。
資料型別nvarchar在 SQL Server 中。在直通查詢中,我修剪了 select 陳述句中的空格。資料的所有其他用途都支持這剩余的文本型別。但是我想在一個特定的地方顯示時減去一個值。
直通看起來像這樣:
Select
,Trim([NumberStoreAsTextWithSpaces]) as NumberStoredAsTextNoSpaces
,[Other stuff]
,[Other stuff1]
,[Other stuff2]
,[Other stuff...]
From [dbo].[Table of Numbers of Stuff]
當我訪問表單的控制元件資料源是直通查詢,而在文本框控制元件中,控制元件資料源是:
=[NumberStoredAsTextNoSpaces]-42.0
這導致#Type!文本框中的結果。
在減法運算之前嘗試CDbl()導致零或空值減去 42.0,并在文本框中簡單地顯示為 -42.0。
我不一定關心查詢中某處是否存在錯誤資料項,Select ... Trim 會直接跳過它。并且 Access 表單應該只在游標處出錯。
我錯過了什么?
uj5u.com熱心網友回復:
由于這是一個 pt 查詢,因此您可以像這樣進行轉換:
Select
,CAST(Trim([NumberStoreAsTextWithSpaces]) AS real) as NumberStoredAsTextNoSpaces
,[Other stuff]
,[Other stuff1]
,[Other stuff2]
,[Other stuff...]
From [dbo].[Table of Numbers of Stuff]
所以,對于演員:
int (Access long)
float (Access double)
real (Access single)
money (Access currency)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/459701.html
