SQL Server 2008显示它不应该的数据

时间:2012-06-22 08:18:27

标签: sql sql-server sql-server-2008 sql-update aspdotnetstorefront

我对SQL Server 2008有一个非常奇怪的问题。我们有一个电子商务购物车ASPDOTNETSTOREFRONT我们将产品类别设置为UNPUBLISHED(通过购物车管理部分),并在数据库记录中设置为0这是正确的

我们刷新页面,类别已从网页上消失。

昨天所有类别不显示,然后今天该类别现在显示在页面和管理部分和数据库中,其设置为未发布。从来没有任何逻辑意义!

服务器的C:\是25GB,只有100MB的可用空间!并且使用SQL Server将操作系统加载到它上面,但网站托管在具有500GB可用空间的D:\上。

我可以做些什么来进一步调查? (如果它在错误的堆栈网站中,请迁移它,但我认为程序员可能会尝试类似的东西,因此可能有解决方案)

4 个答案:

答案 0 :(得分:1)

产品类别很可能因为您将这些产品设置为未发布而消失。关于不在real-time中查看更新的网站,这是ASP.Net的奇怪内容,有时保存web.config文件而不对其进行任何更改,更新网站缓存并查看更改..我知道,这很奇怪。否则,您可能需要按店面管理员中的reset cache按钮。

答案 1 :(得分:1)

问题是因为XML包entity.grid.xml.config没有包含以下内容:

<xsl:choose>                      
<xsl:when test="Published=1">
<xsl:call-template name="SubCatCell">
<xsl:with-param name="scName" select="$scName" />
</xsl:call-template>
</xsl:when>

子类别现在正在检查它是否已发布,如果是,则显示它。

答案 2 :(得分:0)

我会使用SQL事件探查器来检查ASP.Net应用程序运行的SQL查询。如果sql server实际上返回了它不应该返回的数据,那么调查表中的数据。如果SQL服务器没有返回数据,但是显示了数据,则问题出在某个地方:使用店面或浏览器。

答案 3 :(得分:0)

最有可能的原因是IIS,服务器或浏览器中的缓存功能(如果它是Web应用程序)。基本上,你需要在严峻的地方进行检查:

  • 通过查询数据库,可能仍然可以创建新记录 来自前端应用程序的参考值
  • 在客户端和服务器端缓存
  • 将SQL事件探查器和Fiddler用于Web应用程序