我有一个在表中插入varchar
&VARBINARY(MAX)
值的存储过程。我将 ac# 传递byte[]
给该varbinary(max)
字段。我还看到 size 的byte[]
大小是 80142,它满足varbinary
. 存储过程执行没有任何错误。但是当我尝试查询该表时,我在varbinary
数据类型中看到了空值。
SQL sp
ALTER PROCEDURE [dbo].[Test]
-- Add the parameters for the stored procedure here
@PNumber varchar(50)
,@Byte varbinary(max)
AS
BEGIN
SET NOCOUNT ON;
-- Insert statements for procedure here
INSERT INTO [Test].[dbo].[Data]
([PNumber]
,[PByte])
VALUES
(@PNumber
,@Byte)
END
C# 代码
byte[] theData = doc.GetData();
DAL_DataTableAdapters.QueriesTableAdapter qta = new DAL_DataTableAdapters.QueriesTableAdapter();
qta.Test("test", theData);
表结构:
CREATE TABLE [dbo].[Data]
(
[ID] [int] IDENTITY(1,1) NOT NULL,
[PNumber] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PByte] [varbinary](max) NULL
) ON [PRIMARY]