2012-02-24 73 views
0

我有一個表在mysql數據庫與布爾列(或tinyint(1))。在我的web應用程序中,我使用了一個gridview來查看該表中的數據,並使用了布爾列的複選框字段。一切都很好,直到這裏。當我嘗試更新的記錄,檢查或使用該查詢更新取消選中複選框字段:使用gridview複選框列更新Mysql記錄

UPDATE image SET `desc` = @desc, `ss` = @ss WHERE `id` = @id 

結果總是一樣的:遞減場正​​確與此同時,SS(布爾更新字段)始終設置爲0,即使我可能將其設置爲1或true。任何想法如何做到這一點?我下面粘貼在SqlDataSource代碼:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:dogservConnectionString %>" 
    DeleteCommand="DELETE FROM image WHERE `id` = @id" 
    ProviderName="<%$ ConnectionStrings:dogservConnectionString.ProviderName %>" 
    SelectCommand="SELECT * FROM image" 

    UpdateCommand="UPDATE image SET `desc` = @desc, `ss` = @ss WHERE `id` = @id"> 
    <DeleteParameters> 
     <asp:Parameter Name="id" Type="Int32" /> 
    </DeleteParameters> 
    <UpdateParameters> 
     <asp:Parameter Name="desc" Type="String" /> 
     <asp:Parameter Name="path" Type="String" /> 
     <asp:Parameter Name="name" Type="String" /> 
     <asp:Parameter Name="ss" Type="Object" /> 
     <asp:Parameter Name="id" Type="Int32" /> 
    </UpdateParameters> 
</asp:SqlDataSource> 
+0

請告訴我們調用此更新的代碼 – Steve 2012-02-24 22:11:26

+0

我使用了sqldatasource,並在wizzard設置中設置了更新查詢。所以我使用gridview的編輯屬性來編輯我的記錄 – Advicer 2012-02-24 22:21:30

+0

我不能幫你用asp.net,但是''對我來說看起來非常可疑。類型應該是像Int32或布爾 – Steve 2012-02-24 22:29:19

回答

0

我不能幫你asp.net,但是這看起來很可疑我。
你告訴我們你的ss列是tinyint,所以type應該是類似Int32或bool的東西。