SQL SERVER200错误处理 服务器
错误处理
在SQL Server2000中出现的错误具有以下几个特点:
错误号:每个错误状态都对应唯一的错误号。
错误信息字符串:错误信息提供了有关错误原因的诊断信息。许多错误信息都有替换变量,其中包含一些信息,如产生错误的对象名称。每个错误号都对应唯一的错误信息。
严重度:严重度表示错误的严重程度。严重度较低的错误,如1级或2级,为信息性消息或低级警告。严重度较高的错误表明问题需要尽快解决。
状态代码:一些错误代码可能在SQL Server源代码中多处出现。如,几种不同情况下都可能发生1105错误。出现错误代码的每一处都指派了唯一的状态代码。可以使用错误的状态代码在源代码中查找错误代码的位置,这可以为问题的诊断提供参考。
过程名:如果在存储过程中发生错误,则该存储过程的名称也许可用。
行号:行号指出存储过程中产生错误的语句。
系统的所有错误都存储在系统表master.dbo.sysmessages中。用户定义的消息也可以存储在此系统表中。如果需要,可以使用RAISERROR语句将这些用户定义的错误返回到一个应用程序。
所有的数据库API,如ADO、OLE DB、ODBC、DB-Library和嵌入式SQL,均报告基本的错误属性:错误号和消息字符串。然而,每个数据库所能报告的其他错误特性的数量是不同的。
a.使用@@ERROR全局变量处理错误
@@ERROR全局变量返回最后执行的T-SQL语句的错误代码。当SQL Server完成T-SQL语句的执行时,如果语句执行成功,则@@ERROR设置为0。若出现一个错误,则返回一条错误信息。@@ERROR返回此错误信息代码,直到另一条T-SQL语句被执行。
由于@@ERROR在每一条语句执行后被清除并且重置,所以应在语句验证后立即检查它,或将其保存到一个局部变量中以备事后查看。
在SQL Server中,可以使用下面两种方法对@@ERROR进行处理:
在T-SQL语句后,马上检测或使用@@ERROR
在T-SQL语句完成后,马上把@@ERROR存储到一个整形变量中
例:
USE bookdb
GO
SELECT * from book
GO
IF @@ERROR=0
PRINT '执行成功!'
ELSE
PRINT '查询出错!'
GO
执行上面语句,则在"网络"窗口中显示查询结果,而在"消息"窗口中显示"执行成功"的字样。
b.使用RAISERROR
在上面的操作中,使用PRINT可以显示一些提示信息。与PRINT相比,RAISERROR在把消息返回给应用程序方面的功能更强大。RAISERROR能以下列方式中的任意一种返回消息:
已通过sp_addmessage系统存储
相关文档:
本文来自:http://hi.baidu.com/darkroot/blog/item/7b74be2cf06d76e78b139903.html
declare @tbName nvarchar(500)
declare @ct int
declare @csql nvarchar(500)
declare &n ......
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
impo ......
Java数据类型
Hibernate数据类型
标准SQL数据类型
(PS:对于不同的DB可能有所差异)
byte、java.lang.Byte
byte
TINYINT
short、java.lang.Short
short
SMALLINT
int、java.lang.Integer
integer
INGEGER
long、java.lang.Long
long
BIGINT
float、java.lang.Float
float
FLOAT
double、java.lang.Doubl ......
不喷口水!直接上图
1.数据库对象检索功能
2.T-SQL语法帮助
3.常用函数帮助(不懂鸟语?13自己练练吧!)
Download Now
安装流程:
1.先把网络咔叉了(断网 - -!!)
2.把所有的SQL Server,VS都关了,运行SQLPrompt 4.0.exe安装
3.安装完毕后,退出RedGate.SQLPrompt.TrayApp ......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient; //引用命名空间
namespace DAL
{
/*******************************************************************************
&n ......