使用链接服务器或单独的连接字符串?
我有三个城市的 10 个数据库,但它们都位于一台具有不同实例的数据库服务器上,还有 1 个主数据库。 每个城市都有以下数据库:
1-DB1
2-DB2
3-DB3
db main 中插入的每条记录都有一个城市字段。根据插入记录的城市字段,相同的记录必须插入到 db main 中的插入记录中指定城市的三个数据库中。 在我的 C# 代码中使用链接服务器还是使用单独的连接字符串更好? 如您所知,我的连接字符串应该针对每个数据库进行更改。
I have 10 databases for three cities but all of them are located in one DB server with different instances and also 1 main database.
each city has following databases:
1-DB1
2-DB2
3-DB3
every record which is inserted in db main has a city field.According to th city field of inserted record the same record must be inserted in three databases of specified city in inserted record in db main.
Is it better to I use linked server or using separate connection string in my C# code?
as you know my connection string should be changed for each database.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
理想情况下,我不会让应用程序负责保持数据库同步 - 太多的事情可能会出错 - 应用程序可能会崩溃,网络可能会崩溃......
您可能最好使用数据库触发器,这样您的应用程序就可以了必须更新一个数据库,触发器将完成其余的工作。以下 MSDN 文章解释了如何执行此操作:创建触发器
Ideally I wouldn't make an application responsible for keeping databases in sync - too many things could go wrong - the application might crash, the network might go down...
You might be better off using a database trigger, that way your application only has to update one database and the trigger will do the rest. Here's an MSDN article explaining how to do it: Create Trigger
如果它们位于同一数据库上,则既不需要链接服务器,也不需要单独的连接字符串。您可以只使用由 3 部分组成的名称,例如:
您选择哪一个取决于您的数据库分布在不同服务器上的可能性。如果您确定它们将保留在同一服务器上,那么由三部分组成的名称是迄今为止最简单的。
If they're on the same database, you need neither a linked server nor a separate connection string. You can just use a 3 part name, like:
Which one you choose depends on the chance that your database is ever split up over different servers. If you're sure they'll remain on the same server, a 3 part name is by far easiest.