在做ASP.net第一步书上留言板程序的时候 出现错误
CS代码using System;
using System.Data;
using System.Data.SqlClient;//加入命名空间
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void tb_SendMessage_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection(@"server=microsof-468164\sqlexpress;database=GuestBook;Trusted_Connection=True");
string Sql = "INSERT INTO tbGuestBook (UserName,PostTime,Message,IsReplied,Reply) VALUES (' test ',' 2006-11-2 12:00 ',' 编程快乐',0,'')";
SqlCommand cmd = new SqlCommand(Sql, conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
}
执行过程中出现异常信息如下:
用户代码未处理 System.Data.SqlClient.SqlException
Message="不能将值 NULL 插入列 'ID',表 'GuestBook.dbo.tbGuestBook';列不允许有空值。INSERT 失败。\r\n语句已终止。"
Source=".Net SqlClient Data Provider"
ErrorCode=-2146232060
Class=16
LineNumber=1
Number=515
Procedure=""
Server="microsof-468164\\sqlexpress"
State=2
StackTrace:
在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
在 System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
在 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
在 System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
在 _Default.tb_SendMessage_Click(Object sender, EventArgs e) 位置 d:\Backup\我的文档\Visual Studio 2005\WebSites\WebSite1\Default.aspx.cs:行号 24
在 System.Web.UI.WebControls.Button.OnClick(EventArgs e)
在 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
在 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
在 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
在 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
怎么办哦。谢谢大家啦 --------------------编程问答-------------------- 看起来象是象guestbook表插入字段时,ID字段未有值,ID是主键吧,如果不想自己插入主键,就将这个字段设为自增的吧 --------------------编程问答-------------------- "INSERT INTO tbGuestBook (UserName,PostTime,Message,IsReplied,Reply) VALUES (' test ',' 2006-11-2 12:00 ',' 编程快乐',0,'')";
'')";
表中 reply 字段应该是不能为空的!加个值试试! --------------------编程问答-------------------- 有个字段不能为空。但你给了他null --------------------编程问答-------------------- string Sql = "INSERT INTO tbGuestBook (UserName,PostTime,Message,IsReplied,Reply) VALUES (' test ',' 2006-11-2 12:00 ',' 编程快乐',0,'')";
少插入一列. --------------------编程问答-------------------- 楼主在创建数据库的时候 Reply 字段 是否在 允许空 上打勾? 本人刚做完这个没出现这个问题 --------------------编程问答-------------------- 表的id字段设为自动编号(access),sqlserver也差不多. --------------------编程问答-------------------- 谢谢大家了。真是奇怪。我把数据库重新整了一遍。就好了。其他的未动。数据库的赋值上Reply一直是允许空的 怪事 --------------------编程问答-------------------- 如果问题解决请结,谢谢!
不知道怎么结贴?!请查看下面的帖子。
http://topic.csdn.net/u/20080110/19/7cb462f1-cac6-4c28-848e-0a879f4fd642.html
补充:.NET技术 , ASP.NET