使用C#动态创建SQL Server数据库文件

时间:2010-12-16 01:51:13

标签: c# sql-server

是否可以动态创建独立于任何SQL Server引擎的数据库文件?问题是我们想在我们的应用程序中为每个用户创建一个数据库文件,我们希望该数据库存储在用户的目录中,但我们不希望通过SQL Server连接到它。 Prety很像sdf文件,但不是App特定的,特定于用户。

所以我们想要做的是每次在应用程序中创建用户,生成他们的文件夹,并生成数据库模式,这将在以后填充。

4 个答案:

答案 0 :(得分:3)

听起来像是在寻找SQL Server Compact。您可以在运行时创建任意数量的这些数据库,并将它们放在任何您想要的位置。

答案 1 :(得分:2)

听起来你真的想要一个“Access”和Jet引擎的组合。 它在单个文件要求中满足数据库,并且对单个用户访问具有合理的性能。

另一种可能性是sqlite,这是恕我直言更好的数据库,但对C#的支持似乎不成熟。

答案 2 :(得分:1)

您还可以存储空数据库文件,每次创建新用户时,都会将该空数据库文件的副本复制到用户文件夹中。这样,架构将来自空数据库文件(它就像是SQL Server中的模板或模型数据库)。

答案 3 :(得分:0)

使用smo的SQL Server Express / Compact以编程方式创建数据库。