2012-04-15 82 views
0

我要上傳圖片到數據庫,所以我加了一個uploadfile控制,我使用的INSERT命令是這樣的:SQL Server 2005的圖片上傳到數據庫

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的是圖像不兼容

你能PLZ

+0

您試圖插入的表的模式是什麼? – 2012-04-15 06:32:45

+0

dbo是模式 – Lucky 2012-04-15 08:06:49

+0

我正在使用這樣的函數:public void insert_image(FileUpload file){if(file.HasFile).....}。它在if子句中拋出NullReferenceException。我有一個使用此代碼的插入按鈕:FileUpload file =(FileUpload)this.FindControl(「FleUpload」); insert_image(file); – Lucky 2012-04-15 08:10:36

回答

0

幫助爲了圖像(插入/更新)上傳到數據庫,您需要和/或如下定義controlParameter:

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

控件ID應該是訪問控制的完整路徑:在這裏我FileUpload控件是一個FormView內。我將我的圖像作爲二進制存儲到數據庫(我的db字段類型是Varbinary)。

相關問題