2013-03-26 162 views

回答

5

在SQL Server中,你可以寫稱爲CStr()執行轉換用戶定義的標量函數。

內置例程不兼容。

不幸的是,這將沒有真正的工作,因爲你需要的前綴功能所有模式名。所以,你可以有:

create function cstr(@val int) 
returns varchar(255) as 
begin return(cast(@val as varchar(255))) end; 

但是你要稱呼其爲:

select dbo.cstr(4); 

如果該值是在一列,然後再考慮在桌子上寫一個視圖,在每個數據庫中,在視圖中進行轉換。

要獲得VB與Access和SQL Server一起工作,你可以只放棄訪問和使用一個真正的數據庫。哦,我想這不是一個解決方案;)你將需要確定數據庫的類型,併爲每個數據庫設置不同的代碼。你可以通過使用視圖來隱藏一些醜陋來最小化這種情況。

您可能會發現有利切換到SQL Server 2012中,已經擴展了其功能的劇目包括一些訪問功能。但不是cstr()

+0

問題轉換是,我使用此查詢在VB中,我可以連接sql數據庫或訪問 – 2013-03-26 14:36:25

+0

好吧,我明白你非常感謝你 – 2013-03-26 14:45:04

4

我們可以在VARCHAR轉換爲數字如此:

select format(Adress_ID,'0') ... next code 

這段代碼將從兩個,Access和SQL Server