当前位置:编程学习 > C#/ASP.NET >>

[请教]SqlDataSource的update参数为空时更新失败的问题

我刚开始学习asp.net,照着O'Reilly的《programming asp.net》第9章中的一个例子尝试SqlDataSource+GridView的优化并行,部分代码如下:
UpdateCommand="UPDATE [Customers]
                              SET [CompanyName] = @CompanyName,
                                  [ContactName] = @ContactName,
                                  [ContactTitle] = @ContactTitle,
                                  [Address] = @Address,
                                  [City] = @City,
                                  [Region] = @Region,
                                  [PostalCode] = @PostalCode,
                                  [Country] = @Country,
                                  [Phone] = @Phone,
                                  [Fax] = @Fax
                              WHERE [CustomerID] = @original_CustomerID
                                AND [CompanyName] = @original_CompanyName
                                AND [ContactName] = @original_ContactName
                                AND [ContactTitle] = @original_ContactTitle
                                AND [Address] = @original_Address
                                AND [City] = @original_City
                                AND [Region] = @original_Region
                                AND [PostalCode] = @original_PostalCode
                                AND [Country] = @original_Country
                                AND [Phone] = @original_Phone
                                AND [Fax] = @original_Fax"
------------------------------------------------------------------------------
<UpdateParameters>
                <asp:Parameter Name="CompanyName" Type="String" />
                <asp:Parameter Name="ContactName" Type="String" />
                <asp:Parameter Name="ContactTitle" Type="String" />
                <asp:Parameter Name="Address" Type="String" />
                <asp:Parameter Name="City" Type="String" />
                <asp:Parameter Name="Region" Type="String" />
                <asp:Parameter Name="PostalCode" Type="String" />
                <asp:Parameter Name="Country" Type="String" />
                <asp:Parameter Name="Phone" Type="String" />
                <asp:Parameter Name="Fax" Type="String" />
                <asp:Parameter Name="original_CustomerID" Type="String" />
                <asp:Parameter Name="original_CompanyName" Type="String" />
                <asp:Parameter Name="original_ContactName" Type="String" />
                <asp:Parameter Name="original_ContactTitle" Type="String" />
                <asp:Parameter Name="original_Address" Type="String" />
                <asp:Parameter Name="original_City" Type="String" />
                <asp:Parameter Name="original_Region" Type="String" />
                <asp:Parameter Name="original_PostalCode" Type="String" />
                <asp:Parameter Name="original_Country" Type="String" />
                <asp:Parameter Name="original_Phone" Type="String" />
                <asp:Parameter Name="original_Fax" Type="String" />
            </UpdateParameters>
--------------------------------------------------------------------------------
现在发现的问题是,如果更新的行里有单元格空着,就更新不了,我尝试过没有空值的行,可以更新,似乎WHERE语句发现NULL就会返回false一样,请问有什么办法解决么?谢谢! --------------------编程问答-------------------- 第一次发帖,不知道问的是不是够清楚 --------------------编程问答-------------------- 如果是有空行就无法更新,而且没有空行的能更新,说明你的数据库表在设置字段的时候,行的数据是不允许出现空的,尝试这样的操作,某些非必填的字段,设置为允许NULL,也许能解决你的问题
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,