簡體   English   中英

如何將varbinary轉換為varchar sql server

[英]How to convert varbinary to varchar sql server

我有表格列:

ID int,
FirstName nvarchar(50),
Phone varchar(50),
Email varbinary(50)  -- (use varbinary for unicode)

在此表中有我想要更新電話和電子郵件的存儲過程。 這是我的程序的輸入參數

@id int,
@Phone varchar(50),
@Email varchar(50)

如何在更新時將Email轉換為varbinary? 當我像這樣更新:

UPDATE myProcedure
SET [Phone] = @Phone,
    [Email] = @Email
WHERE [ID] = @ID 

有錯誤: Implicit conversion from data type varchar to varbinary is not allowed. Use the CONVERT function to run this query. Implicit conversion from data type varchar to varbinary is not allowed. Use the CONVERT function to run this query.

為什么要將電子郵件存儲為varbinary 將其更改為NVARCHAR它將支持Unicode。

您的表結構應如下所示:

CREATE TABLE YourTable
(
   ID int,
   FirstName nvarchar(50),
   Phone varchar(50),
   Email NVARCHAR(50)
)

轉換:

DECLARE @ConvertedEmail VARBINARY(50)
SET @ConvertedEmail = CONVERT(varbinary(1000), @Email, 2)

然后,您可以使用@ConvertedEmail更新您的表

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM