gpt4 book ai didi

c# - LINQ to SQL 无法创建数据库 [架构权限]

转载 作者:太空狗 更新时间:2023-10-29 20:26:05 27 4
gpt4 key购买 nike

对于某些集成测试,我想使用 LINQ to SQL 删除/重新创建测试数据库。我以前工作得很好,但是在这个项目中,数据库被分成几个模式。

当我尝试运行 ctx.CreateDatabase() 命令时出现此异常:

The specified schema name "xyz" either does not exist or you do not have permission to use it.

我用来执行此操作的登录名具有 dbcreator 角色 - 它需要进一步的权限吗?当然,具有创建数据库权限的登录名也应该能够创建该数据库中包含的所有内容吗?

更新:

由于看起来没有使用 LINQtoSQL 解决此问题的方法,有没有人推荐任何类似的工具来生成最好是免费的数据库?理想情况下,我不想手动编写 sql 构建脚本。

最佳答案

据我所知,CreateDatabase() 方法在它可以复制原始数据库的内容方面受到限制。它不会重新创建触发器和检查约束之类的东西,我猜它也不会创建自定义模式。您可能需要研究使用 SQL Server .mdf 创建数据库文件来解决此问题。参见 this blog entry有关 CreateDatabase() 的一些限制的更多详细信息。

关于c# - LINQ to SQL 无法创建数据库 [架构权限],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1554634/

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