SqlConnection.ChangeDatabase-如何提供架构?

时间:2018-08-15 13:43:37

标签: c# sql-server

我对SqlConnection的ChangeDatabase(string databaseName)感到有些困惑。

我认为,如果数据库名称不在同一模式中,则它们不必是唯一的,例如,我可以使用dbo.DatabaseName和hr.DatabaseName。

尽管我看到的ChangeDatabase的每个示例仅使用数据库名称...,但只是懒惰,实际上我可以通过使用提供全名 "[dbo].DatabaseName"作为参数?还是还有其他东西?

1 个答案:

答案 0 :(得分:0)

在Microsoft SQL Server中,数据库未按您认为的方式与架构关联。
如果要查看它们之间的父子关系,我会说数据库是父级。

在数据库中,可以存在多个架构。创建它们之后,您可以定义表和其他数据库对象(甚至用户),这些表和其他数据库对象是您在数据库级定义的架构之一的一部分。

因此,ChangeDatabase方法除了在T-SQL中执行“ USE {DBNAME}”语句外什么都不做。

看看:USE (Transact-SQL)