0

我想将图像上传到数据库中,因此我添加了一个上传文件控件,并且我正在使用这样的插入命令:

INSERT INTO tab_employee(inter_sn, card_no, Tazkara_N, Tazkara_Vol, Tazkara_Page, Tazkara_SN, Name_emp, Fname_emp, GrandFatherName, Family_name, Gender, Birth_Day, Birth_Month, Birth_year, Marital_status, DOJ_Day, DOJ_Month, DOJ_Year, Position, Type_empl, Grade, Work_grade, Prof_level, Kadri_a, Act_code, ethic_gr, File_no, Birth_place, rem1, rem2, rem3,EngName,EngLastName,position_eng,**photo**) VALUES (@inter_sn, @card_no, @Tazkara_N, @Tazkara_Vol, @Tazkara_Page, @Tazkara_SN, @Name_emp, @Fname_emp, @GrandFatherName, @Family_name, @Gender, @Birth_Day, @Birth_Month, @Birth_year, @Marital_status, @DOJ_Day, @DOJ_Month, @DOJ_Year, @Position, @Type_empl, @Grade, @Work_grade, @Prof_level, @Kadri_a, @Act_code, @ethic_gr, @File_no, @Birth_place, @rem1, @rem2, @rem3,@EngName,@EngLastName,@position_eng,**@photo**)

在我浏览我的照片并尝试将数据插入数据库后,我得到了这个:

操作数类型冲突:nvarchar 与图像不兼容 说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.Data.SqlClient.SqlException:操作数类型冲突:nvarchar 与图像不兼容

你能帮忙吗?

4

1 回答 1

0

为了将图像(插入/更新)上传到数据库中,您需要在 or/and 中定义一个 controlParameter,如下所示:

<asp: ControlParameter Name="photo" ControlID = "FormView1$FileUpload1" DbType ="Binary"
    />

ControlID 应该是访问控件的完整路径:这里我的 fileupload 控件位于 formview 中。我将我的图像作为二进制存储到数据库中(我的 db 字段类型是 Varbinary )。

于 2012-04-23T03:49:00.640 回答