栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

ExecuteNonQuery:连接属性尚未初始化。

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

ExecuteNonQuery:连接属性尚未初始化。

您需要将连接分配给

SqlCommand
,可以使用构造函数或属性:

cmd.InsertCommand = new SqlCommand("INSERT INTO Application VALUES (@EventLog, @TimeGenerated, @EventType, @SourceName, @ComputerName, @InstanceId, @Message) ");cmd.InsertCommand.Connection = connection1;

我强烈建议对

using-statement
实现
IDisposable
类似的任何类型使用
SqlConnection
,它还会关闭连接:

using(var connection1 = new SqlConnection(@"Data Source=.sqlexpress;Initial Catalog=syslog2;Integrated Security=True"))using(var cmd = new SqlDataAdapter())using(var insertCommand = new SqlCommand("INSERT INTO Application VALUES (@EventLog, @TimeGenerated, @EventType, @SourceName, @ComputerName, @InstanceId, @Message) ")){    insertCommand.Connection = connection1;    cmd.InsertCommand = insertCommand;    //.....    connection1.Open();    // .... you don't need to close the connection explicitely}

除此之外,你并不需要创建一个新的连接,并

DataAdapter
在每个条目
foreach
,即使创建,打开和关闭连接并 不能
意味着ADO.NET将创建,打开和关闭一个 物理
连接,但只是眺望用于可用连接的连接池。但是,这是不必要的开销。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/433001.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号