不是错误的错误

trui 2004-09-13 10:58:49
我遇到了一个好像不是错误的错误,我写了一段向数据库里插入数据的小程序,当提交时系统报错是“/”应用程序中的服务器错误。
可是当我刷新网页的时候,发现我的数据已经插入到数据库中,还能显示出来,这是为什么啊
代码如下
public void Page_Load(Object sender,EventArgs e)
{
if(!Page.IsPostBack)
{
SqlDataAdapter myCommand1 = new SqlDataAdapter("select * from xinxi",myConnection);
DataSet ds1 = new DataSet();
myCommand1.Fill(ds1, "xinxi");

MyDataGrid.DataSource=ds1.Tables["xinxi"].DefaultView;
MyDataGrid.DataBind();
}
}

public void Btn_Click(Object sender,EventArgs e)
{
String t1,t2,t3,t4,t5,t6;
t1=Request.Form["T1"];
t2=Request.Form["T2"];
t3=Request.Form["T3"];
t4=Request.Form["T4"];
t5=Request.Form["T5"];
t6=Request.Form["T6"];
String selectCmd = "Insert into xinxi(pname,gongzuodanwei,youbian,gangweizhize,dianziyouxiang,gx) Values('"+t1+"','"+t2+"','"+t3+"','"+t4+"','"+t5+"','"+t6+"')";

SqlDataAdapter myCommand = new SqlDataAdapter(selectCmd,myConnection);
DataSet ds = new DataSet();
myCommand.Fill(ds,"xinxi");

MyDataGrid.DataSource=ds.Tables["xinxi"].DefaultView;
MyDataGrid.DataBind();
}
</script>
...全文
158 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
trui 2004-09-13
  • 打赏
  • 举报
回复
我改成 String selectCmd = "Insert into xinxi Values('"+t1+"','"+t2+"','"+t3+"','"+t4+"','"+t5+"','"+t6+"')";
后运行的结果还是一样啊?
homesos 2004-09-13
  • 打赏
  • 举报
回复
miaowei127(双手插袋)说的对,估计应该是这段错了
String selectCmd = "Insert into xinxi(pname,gongzuodanwei,youbian,gangweizhize,dianziyouxiang,gx) Values('"+t1+"','"+t2+"','"+t3+"','"+t4+"','"+t5+"','"+t6+"')";

SqlDataAdapter myCommand = new SqlDataAdapter(selectCmd,myConnection);
DataSet ds = new DataSet();
myCommand.Fill(ds,"xinxi");
这段在winform中是通不过的,INSERT 语句不应该是这样执行吧!

你还是用其它的方法执行INSERT语句吧
ark_matrix 2004-09-13
  • 打赏
  • 举报
回复
你能不能try...catch把错误捕捉到给大家看看啊
wangdequan1024 2004-09-13
  • 打赏
  • 举报
回复
呵呵,看不出来
miaowei127 2004-09-13
  • 打赏
  • 举报
回复
String selectCmd = "Insert into xinxi(pname,gongzuodanwei,youbian,gangweizhize,dianziyouxiang,gx) Values('"+t1+"','"+t2+"','"+t3+"','"+t4+"','"+t5+"','"+t6+"')";
SqlDataAdapter myCommand = new SqlDataAdapter(selectCmd,myConnection);
DataSet ds = new DataSet();
myCommand.Fill(ds,"xinxi");

这段写的有问题啊。
miaowei127 2004-09-13
  • 打赏
  • 举报
回复
SqlDataAdapter myCommand = new SqlDataAdapter(selectCmd,myConnection);

selectCmd是Insert??
homesos 2004-09-13
  • 打赏
  • 举报
回复
在哪句话出的错呀
trui 2004-09-13
  • 打赏
  • 举报
回复
不是阿,这回事头一次,就是提示错误,不明白错到哪里了
daguzhang 2004-09-13
  • 打赏
  • 举报
回复
看不出来有什么问题啊
你每次都会出这个问题吗
homesos 2004-09-13
  • 打赏
  • 举报
回复
你还是装个.NET平台吧,查资料蛮方便的
homesos 2004-09-13
  • 打赏
  • 举报
回复
你还是用 SqlCommand 执行吧


SqlCommand 成员请参见

公共构造函数
SqlCommand 构造函数
受 .NET Framework 精简版的支持。
已重载。初始化 SqlCommand 类的新实例。

公共属性
[CommandText]
受 .NET Framework 精简版的支持。
获取或设置要对数据源执行的 Transact-SQL 语句或存储过程。
CommandTimeout
受 .NET Framework 精简版的支持。
获取或设置在终止执行命令的尝试并生成错误之前的等待时间。
CommandType
受 .NET Framework 精简版的支持。
获取或设置一个值,该值指示如何解释 CommandText 属性。
Connection
受 .NET Framework 精简版的支持。
获取或设置 SqlCommand 的此实例使用的 SqlConnection。
Container(从 Component 继承) 获取 IContainer,它包含 Component。
DesignTimeVisible 获取或设置一个值,该值指示命令对象是否应在 Windows 窗体设计器控件中可见。
Parameters
受 .NET Framework 精简版的支持。
获取 SqlParameterCollection。
Site(从 Component 继承) 获取或设置 Component 的 ISite。
Transaction
受 .NET Framework 精简版的支持。
获取或设置将在其中执行 SqlCommand 的 SqlTransaction。
UpdatedRowSource
受 .NET Framework 精简版的支持。
获取或设置命令结果在由 DbDataAdapter 的 Update 方法使用时如何应用于 DataRow。

公共方法
Cancel
受 .NET Framework 精简版的支持。
试图取消 SqlCommand 的执行。
CreateObjRef(从 MarshalByRefObject 继承) 创建一个对象,该对象包含生成用于与远程对象进行通讯的代理所需的全部相关信息。
CreateParameter
受 .NET Framework 精简版的支持。
创建 SqlParameter 对象的新实例。
Dispose(从 Component 继承) 已重载。释放由 Component 占用的资源。
Equals(从 Object 继承)
受 .NET Framework 精简版的支持。
已重载。确定两个 Object 实例是否相等。
ExecuteNonQuery
受 .NET Framework 精简版的支持。
对连接执行 Transact-SQL 语句并返回受影响的行数。
ExecuteReader
受 .NET Framework 精简版的支持。
已重载。将 CommandText 发送到 Connection 并生成一个 SqlDataReader。
ExecuteScalar
受 .NET Framework 精简版的支持。
执行查询,并返回查询所返回的结果集中第一行的第一列。忽略额外的列或行。
ExecuteXmlReader
受 .NET Framework 精简版的支持。
将 CommandText 发送到 Connection 并生成一个 XmlReader 对象。
GetHashCode(从 Object 继承)
受 .NET Framework 精简版的支持。
用作特定类型的哈希函数,适合在哈希算法和数据结构(如哈希表)中使用。
GetLifetimeService(从 MarshalByRefObject 继承) 检索控制此实例的生存期策略的当前生存期服务对象。
GetType(从 Object 继承)
受 .NET Framework 精简版的支持。
获取当前实例的 Type。
InitializeLifetimeService(从 MarshalByRefObject 继承) 获取控制此实例的生存期策略的生存期服务对象。
Prepare
受 .NET Framework 精简版的支持。
在 SQL Server 的实例上创建命令的一个准备版本。
ResetCommandTimeout
受 .NET Framework 精简版的支持。
将 CommandTimeout 属性重置为其默认值。
ToString(从 Object 继承)
受 .NET Framework 精简版的支持。
返回表示当前 Object 的 String。

公共事件
Disposed(从 Component 继承) 添加事件处理程序以侦听组件上的 Disposed 事件。

受保护的属性
DesignMode(从 Component 继承) 获取一个值,用以指示 Component 当前是否处于设计模式。
Events(从 Component 继承) 获取附加到此 Component 的事件处理程序的列表。

受保护的方法
Dispose(从 Component 继承)
受 .NET Framework 精简版的支持。
已重载。释放由 Component 占用的资源。
Finalize(从 Component 继承)
受 .NET Framework 精简版的支持。
已重写。在通过垃圾回收将 Component 回收之前,释放非托管资源并执行其他清理操作。
在 C# 和 C++ 中,使用析构函数语法来表示终结程序。

GetService(从 Component 继承) 返回一个对象,该对象表示由 Component 或它的 Container 提供的服务。
homesos 2004-09-13
  • 打赏
  • 举报
回复
这肯定是你用错了方法执行INSERT语句,
科尔 说的对
trui 2004-09-13
  • 打赏
  • 举报
回复
to kerlw(科尔)
你的方法我没有见过,麻烦你给讲一下好么
kerlw 2004-09-13
  • 打赏
  • 举报
回复
上面代码中的OleDbConnection是你自己定义的连接到数据库的连接.
kerlw 2004-09-13
  • 打赏
  • 举报
回复
晕~~~!!!!哪有你这样执行insert into 语句的?????

string sql = "insert into ........."
OleDbCommand cmd = OleDbConnection.CreateCommand();
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
trui 2004-09-13
  • 打赏
  • 举报
回复
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:


行 34: myCommand.Fill(ds,"xinxi");
行 35:
行 36: MyDataGrid.DataSource=ds.Tables["xinxi"].DefaultView;
行 37: MyDataGrid.DataBind();
行 38: }


源文件: c:\inetpub\wwwroot\xinxi.aspx 行: 36

堆栈跟踪:


[NullReferenceException: 未将对象引用设置到对象的实例。]
ASP.xinxi_aspx.Btn_Click(Object sender, EventArgs e) in c:\inetpub\wwwroot\xinxi.aspx:36
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
System.Web.UI.Page.ProcessRequestMain() +1277



trui 2004-09-13
  • 打赏
  • 举报
回复
请各位兄弟帮帮忙
trui 2004-09-13
  • 打赏
  • 举报
回复
那系统怎么提示出错阿:“/”应用程序中的服务器错误。
然后一刷新就插入到数据库中了
khpcg 2004-09-13
  • 打赏
  • 举报
回复
没看出什么问题

110,529

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧