gpt4 book ai didi

sql-server - 在附加数据库中创建成员表、SPROC、 View

转载 作者:行者123 更新时间:2023-12-01 04:18:38 24 4
gpt4 key购买 nike

我的 VS 2010 项目中有 AdventureWorks 数据库 mdf 文件。无论如何我可以在我的 AdventureWorks 数据库中创建成员资格表。我知道我可以在 SQL SERVER 2008 中分离数据库附加。创建表然后分离。但是我没有 SQL SERVER 2008,我想看看这是否可以使用命令行工具来完成。

我试过这个但没有用:

aspnet_regsql.exe -d AdventureWorks.mdf -A mr -E -S .\SQLEXPRESS

更新:

如果我右键单击并查看 AdventureWorks.mdf 数据库的属性,那么它显示的名称为

"C4BE6C8DA139A060D14925377A7E63D0_64A_10\ADVENTUREWORKSWEBFORMS\ADVENTUREWORKSWEBFORMS\ADVENTUREWORKS\APP_DATA\ADVENTUREWORKS.MDF"

这很有趣!

最佳答案

我认为问题在于您试图在分离的 SQLExpress 数据库上执行此操作。您可能有另一个实际上永久附加的 AdventureWorks 副本,这就是您没有看到任何错误的原因。

请尝试以下操作:

1) 如果您还没有 SQL Server Management Studio [Express] 的副本,get it - 与 Visual Studio 相比,使用它会更容易。

2) 运行以下脚本:

USE AdventureWorks

SELECT name, physical_name
FROM sys.database_files

3) 如果你得到一个错误,说数据库不存在,跳到第 5 步。如果你看到 physical_name与您的 app_data 中的本地不匹配的条目文件夹,继续下一步。如果您看到相同的条目 app_data文件夹,然后我很难过。

4) 运行以下命令以分离现有数据库:
EXEC sp_detach_db 'AdventureWorks'

5) 运行以下命令为您的应用程序附加 SQL Express DB:
EXEC sp_attach_db 'AdventureWorks',
'C:\inetpub\wwwroot\MyApp\App_Data\ASPNETDB.MDF',
'C:\inetpub\wwwroot\MyApp\App_Data\ASPNETDB_log.ldf'

6) 再次运行 aspnet_regsql 工具,使用您最初使用的相同选项,但不包括 .mdf在数据库名称的末尾。

7) 在 SSMS[E] 中验证表是否已创建。

8) 再次使用 EXEC sp_detach_db 'AdventureWorks' 分离数据库(如果应用程序依赖其连接字符串中的临时附件,您将需要这样做,我敢打赌它确实如此)。

关于sql-server - 在附加数据库中创建成员表、SPROC、 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2669148/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com