我对 .NET、C# 和 SQL Server 非常陌生。
我需要使用 C# 开发一个套接字应用程序。该应用程序应该根据某些请求插入
、删除
、更新
等数据库中的数据。
我需要使用 C# 开发另一个 Windows 服务应用程序,通过 http 将数据库中的数据发送到 Web 应用程序。
这两个应用程序在同一系统中运行。数据库是SQL Server。这两个应用程序使用相同的数据库。
我不确定当一个应用程序在数据库中删除或插入数据时,另一个应用程序是否仍然能够同时访问数据库。
最佳答案
Sql Server 可以很好地处理多个请求。每个连接的客户端都会获得不同的 spid .
但是,由您的 sql server 代码(批处理或存储过程)通过隔离级别和事务处理数据并发问题。因此,为了控制一个用户读取数据,而其他用户正在更新、删除等......,您需要使用隔离级别和锁。
隔离级别:
http://msdn.microsoft.com/en-us/library/aa213034(v=sql.80).aspx
另外:http://dbalink.wordpress.com/2008/05/27/isolation-levels-and-locks-in-sql-server-2005/
关于交易的好文章:
https://web.archive.org/web/20210614153200/http://aspnet.4guysfromrolla.com/articles/072705-1.aspx
关于c# - 多个应用程序能够同时访问 SQL Server 中的同一个数据库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12054203/