2011-01-19 44 views
0

如果可能从sql读取数据而不使用数据库名称服务器名称和表名使用c#?如何读取没有数据库名称的数据

+0

它是哪种类型的数据库? SqlServer的? – 2011-01-19 13:09:13

+3

出于好奇....在什么情况下,你会合法地连接到数据库和获取数据,而无需转而询问数据库名称是什么? – David 2011-01-19 13:13:36

回答

2

假设你指的是SQL Server(以及我熟悉的大多数数据库平台)......不需要。您需要查找数据库名称。

有办法找到,这样就可以通过查询服务器知道它,但最好的方法是要求数据库管理员或谁的人有给你的许可权限。

1

不,这是不可能的。 SQL表存储在SQL数据库中。你可以在同一台服务器上的两个不同的数据库中拥有两个同名的表。所以只有表名和服务器名称,你不会知道两个表中的哪一个要读取。

0

从理论上讲,您可以使用sp_databases(在SQL Server中)获取所有数据库的列表,然后遍历所有使用您的名称检查系统表的表格,但实际上这将会很慢,成为安全噩梦如果你真的能够看到服务器上的所有数据库?)和一个同名的表可能存在于超过1个数据库中,你无法确定哪个数据库是正确的。

简答:不是。

相关问题