sqlserver 2019 启用 Service Broker
ServiceBroker(简称SSB)是基于数据库引擎提供的一个强大的异步编程模型,通过ServiceBroker,开发人员无需编写复杂的通信和消息程序,即可在数据库实例之间完成高效可靠的异步通信。
Service Broker通常用于:
1 异步触发器
2 大规模批处理
3 可靠和异步处理
SELECT name,is_broker_enabled FROM sys.databases WHERE name = '库名称'
ALTER DATABASE 库名称 SET NEW_BROKER WITH ROLLBACK IMMEDIATE;
ALTER DATABASE 库名称 SET ENABLE_BROKER;
0 为停用 1为启用
SqlBulkCopy
注意datatable里的列要和数据库重的键要对应。数量和名称都得对应
public static void BatchInsert(DataTable dt, string tableName)
{
string connstr = Properties.Settings.Default.lswxConnectionString;
using (SqlConnection conn = new SqlConnection(connstr))
{
Stopwatch sw = new Stopwatch();
SqlBulkCopy bulkCopy = new SqlBulkCopy(conn);
bulkCopy.DestinationTableName = tableName;
bulkCopy.BatchSize = dt.Rows.Count;
conn.Open();
sw.Start();
if (dt != null)
{
bulkCopy.WriteToServer(dt);
sw.Stop();
}
conn.Close();
}
}