gpt4 book ai didi

sql - 在 SQL Server 2008 R2 中新建数据库

转载 作者:搜寻专家 更新时间:2023-10-30 23:11:59 25 4
gpt4 key购买 nike

我在SQL Server 2008 R2中使用如下代码新建一个数据库,程序语言为VB.NET:

Dim WEBconnString As String = "Data Source='NewName'; LCID=1032; Case Sensitive = FALSE; SSCE:Database Password=NewDBpass; Encrypt = TRUE;"
Dim engine As New SqlCeEngine(WEBconnString)
engine.CreateDatabase()

此外:

我使用以下指令打开网络服务器连接:

ServerConn.ConnectionString = "Provider=SQLOLEDB; Data Source=" & WebServerName & _
"; Database=master" & _
"; Uid=" & TempUserName & _
"; Pwd=" & TempUserPass
ServerConn.Open()

而且我还通过以下指令使用数据库连接:

SQLConn.ConnectionString = "server=" & WebServer & "; Uid=" & AdminName & "; Pwd=" & AdminPassword & "; database=master"
SQLConn.Open()

为了能够使用我的指令。我已经在我的 ISP SQL Server 中创建了一个临时数据库,我正在使用该数据库中的凭据作为登录名和密码。

第一次使用;它工作正常,意味着在某个地方创建了一个数据库

现在我试图查看这个数据库,但我找不到任何东西

我再次运行相同的代码,因为它让我觉得数据库没有创建,并且在引擎指令中给我一个错误“数据库存在”

问题是:新数据库是在哪里打开的?

请给我在 VB.NET 中可能需要的任何解决方案

最佳答案

1) 看来您正在混合使用 SqlServerCompact(从 4.0 版开始可以在 ASP.NET 中使用的本地数据库)和 SqlServerSqlCeEngineSystem.Data.SqlServerCe 命名空间的一部分。因此,您创建了一个 SqCompact 文件,而 engine.CreateDatabase() 方法第二次引发异常。连接字符串似乎正确(对于 SqlServerCompact 文件)。如果您没有在连接字符串中指定完整路径(只需像此处一样设置数据库名称),将在执行 app.exe 的位置创建数据库(=|DirectoryPath| )。您必须寻找扩展名为 .sdf 的文件。

2) 我不知道 ServerConn 是什么类型,但由于我在您的连接字符串中看到 "Provider=SQLOLEDB;",我猜您正在使用 OLEDB 类。您应该改用托管的 SqlServer 类(System.Data.SqlServer 命名空间)。所以你应该使用 SqlConnection , SqlCommand, ..., 对象。如果您已经在使用它们,请检查您的 connectionstring因为提供者是错误的。无论如何,在这两种情况下,您都无法访问在 1) 中首先创建的文件。

3) 如果您的目标是创建一个 SqlServer 数据集,不幸的是,没有像 SqlServerCe 中那样的 SqlServerEngine 类。

创建数据库,一些可能的方式:

  • 在设计时使用 Sql Server Management studio
  • 通过执行 scrits(通过 Sql Server Management studio,或通过 .Net 代码,...)
  • 使用 System.Data.SqlServer.Smo 类 (.Net)

关于sql - 在 SQL Server 2008 R2 中新建数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18621861/

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