C# 将SQL Server错误返回给用户
我想返回SQL Server 2008更新时发生的错误 现在我想向用户显示这个错误,这样他就可以理解出了什么问题 我应该如何在c#中执行此操作C# 将SQL Server错误返回给用户,c#,sql-server,C#,Sql Server,我想返回SQL Server 2008更新时发生的错误 现在我想向用户显示这个错误,这样他就可以理解出了什么问题 我应该如何在c#中执行此操作 谢谢……尝试使用Try,catch子句 诸如此类: try { // Update Code Here } catch (Exception e) { // Error message in e.Message // On a form MessageBox.Show(e.Message, "Error!"); // TextBox text1 i
谢谢……尝试使用Try,catch子句 诸如此类:
try {
// Update Code Here
}
catch (Exception e) {
// Error message in e.Message
// On a form
MessageBox.Show(e.Message, "Error!");
// TextBox text1 is defined
text1.Text = e.Message;
System.Console.WriteLine(e.Message);
}
您可以将异常替换为要捕获的异常类型(SqlException)。对数据库执行SQL语句时出错会在连接器中引发异常。这些异常属于类型,因此具有包含用户友好的错误描述的Message属性 请记住,虽然这是一条用户友好的消息,但它是针对开发人员的。您不应该将其显示给最终用户 通常,要捕获异常,必须使用: 当然,这个示例假设一个控制台应用程序 试试这个
try
{
//your sql code
}
catch(SqlException sqlEx)
{
for (int i = 0; i < ex.Errors.Count; i++)
{
errorMessages.Append("Index #" + i + "\n" +
"Message: " + ex.Errors[i].Message + "\n" +
"LineNumber: " + ex.Errors[i].LineNumber + "\n" +
"Source: " + ex.Errors[i].Source + "\n" +
"Procedure: " + ex.Errors[i].Procedure + "\n");
}
Console.WriteLine(errorMessages.ToString());
}
试试看
{
//您的sql代码
}
捕获(SqlException sqlEx)
{
对于(int i=0;i
-它捕获所有sql异常欢迎使用stackoverflow。请显示您的一些代码。我想显示sql返回的异常。e消息是一个带有可读形式错误的字符串。您可以使用MessageBox.Show(e.Message)在表单上显示它,也可以将它指定为textbox等UI元素的文本值,或者使用System.Console.WriteLine(e.Message)等将它写入控制台。
try
{
//your sql code
}
catch(SqlException sqlEx)
{
for (int i = 0; i < ex.Errors.Count; i++)
{
errorMessages.Append("Index #" + i + "\n" +
"Message: " + ex.Errors[i].Message + "\n" +
"LineNumber: " + ex.Errors[i].LineNumber + "\n" +
"Source: " + ex.Errors[i].Source + "\n" +
"Procedure: " + ex.Errors[i].Procedure + "\n");
}
Console.WriteLine(errorMessages.ToString());
}