代码之家  ›  专栏  ›  技术社区  ›  ClarkeyBoy

尝试在本地计算机上运行应用程序时,我遇到了几个与SQL Server相关的错误。请帮忙….![关闭]

  •  0
  • ClarkeyBoy  · 技术社区  · 14 年前

    我处于以下情况:

    • 我被要求写一个管理我们有客户的地方的应用程序-当我们试图添加一个离另一个客户太近的客户时,这必须标记出来,所以必须能够根据邮政编码计算距离。
    • 我选择使用ASP.NET VB,因为我相当擅长这一点,我喜欢浏览器为我做所有的布局(使用Java或C语言将意味着必须单独定位每个元素)。
    • 我从公司的网站上复制了一些文件(我也写了这些文件),并对它们进行了修改,以说明我们需要新应用程序的数据库结构。
    • 我设计了数据库来满足新应用程序的需求。
    • 我在81号端口的IIS上建立了一个网站,通过它可以查看应用程序。

    完成所有这些操作后,我一直收到各种错误,例如“无法加载类型XXXX”(这至少意味着正在检测该页,因为该类型是在ASPX页的顶部指定的,但没有提供有关错误原因的更多信息)。

    下一个错误是 “尝试为文件app_data/xyz.mdf附加自动命名的数据库失败。存在同名的数据库,或者指定的文件无法打开,或者该数据库位于UNC共享上。“ . 此错误仅在从Visual Web Developer运行时在网站上发生。它不会发生在我在端口81上的IIS中设置的站点上。

    通过使用端口81克服了上述错误后,我现在得到了另一个错误。- “在数据库'master'中拒绝创建数据库权限。”尝试为文件附加自动命名的数据库失败。存在同名的数据库,或者指定的文件无法打开,或者该数据库位于UNC共享上。“ . 这让我很困惑,因为我甚至没有尝试创建这个数据库。在尝试执行删除过程(当前不执行任何操作)时发生。执行选择过程(从联系人中选择*)时,不会出现此错误。我还没有尝试更新或插入。

    综上所述,我遇到了两个问题——一个是在试图从vwd中运行时( “尝试为文件app_data/xyz.mdf附加自动命名的数据库失败。存在同名的数据库,或者指定的文件无法打开,或者该数据库位于UNC共享上。“ )当尝试从我在端口81上的IIS中设置的站点运行时,( “在数据库'master'中拒绝创建数据库权限。”尝试为文件附加自动命名的数据库失败。存在同名的数据库,或者指定的文件无法打开,或者该数据库位于UNC共享上。“ )我不知道如何克服这些,以前从来没有遇到过。

    我也需要能够删除数据,所以如果有人能告诉我正确的方向来解决这个错误,我会非常感激。非常感谢。

    当做,

    理查德


    更新:

    好吧,这就是我现在的位置……

    我安装了SQL Server 2008-花了我一段时间,因为它类似于300MB(包括Service Pack),我首先安装了2005,然后发现数据库是2008。:()。任何人,它已安装,我已成功附加数据库。不过,我在用户帐户方面仍然有问题。我已经将应用程序移到了c:中,所以现在它在c:/customerapp中。这意味着我无法在访问“我的文档”中的文件时遇到权限问题——这是以后可能需要处理的问题。

    我现在收到“用户克拉克登录失败”。我也试过包括域名,但也没用。连接字符串中的用户名和密码是正确的(就像半小时前我登录笔记本电脑时使用的用户名和密码一样)。连接字符串的其余部分也必须是正确的,因为它会说它找不到数据库而不是登录失败,不是吗??

    我尝试在SQL Server Management Studio中添加用户,但没有任何效果。我添加了一个名为Clarkey2的用户,并将其分配给数据库所有者、数据阅读器和数据编写器,但这仍然不起作用。

    主要用户Clarkey只有db_所有者-这应该足以更新、插入和删除数据,对吗?

    有人能指导我怎么做吗?现在真的很忙,我真的很想让这个申请完成两周时间。

    非常感谢,

    理查德

    1 回复  |  直到 14 年前
        1
  •  2
  •   p.campbell    14 年前

    这里的问题是您的应用程序有一个数据库 XYZ.mdf 解决方案中的文件。应用程序正在尝试将该数据库动态附加到SQL服务器。

    建议您在这里做一点小小的更改,并将该MDF移到SQL Server本身中。不需要应用程序自动创建数据库本身。

    • 将该MDF文件移到您的SQL Server计算机上。
    • 打开SQL Server Management Studio并附加数据库。找到 .mdf .
    • 根据需要创建服务器登录名和数据库用户。
    • 修改web.config文件以使用新数据库位置的连接字符串。 Create a new connection string from scratch .