try{}catch(){}
主要作用是监控try中有没有异常出现,如果没有,则代码正常执行,不设置catch部分; 如果出现异常,则直接跳转执行catch部分(前提此catch获取了异常)
比如,try中写的是连接SqlServer的代码,如果不出错,则运行return 数据库返回的数据,如果出错了,而且错误是关于Sql的,此时 catch(SqlException se) 获取的正好是Sql异常,则跳转到catch,比如里面写return null
主要功能是保证程序的容错性,即使发生错误,也有其他办法解决(catch段的代码),保证程序正常运行,否则程序一旦出错,则程序自动停止报错,使程序非正常结束,导致数据流失等问题
---利用Sql查询指定表的所有外键约束及外键表名与列名
select aname as 约束名,object_name(bparent_object_id) as 外键表,dname as 外键列,object_name(breferenced_object_id) as 主健表,cname as 主键列 from sysforeign_keys A inner join sysforeign_key_columns B on Aobject_id=bconstraint_object_id inner join syscolumns C on Bparent_object_id=Cobject_id and Bparent_column_id=Ccolumn_id inner join syscolumns D on Breferenced_object_id=dobject_id and Breferenced_column_id=Dcolumn_id where object_name(Breferenced_object_id)='指定表名'
在SQLServer上得到客户端信息( *** 作的数据库名,计算机名,用户名,网卡物理地址,IP地址,程序名)\x0d\createprocp_getlinkinfo\x0d\@dbnamesysname=null,--要查询的数据库名,默认查询所有数据库的连接信息\x0d\@includeipbit=0--是否显示IP地址,因为查询IP地址比较费时,所以增加此控制\x0d\as\x0d\declare@dbidint\x0d\set@dbid=db_id(@dbname)\x0d\createtable#tb(idintidentity(1,1),dbnamesysname,hostnamenchar(128),loginnamenchar(128),net_addressnchar(12),net_ipnvarchar(15),prog_namenchar(128))\x0d\insertinto#tb(hostname,dbname,net_address,loginname,prog_name)\x0d\selectdistincthostname,db_name(dbid),net_address,loginame,program_namefrommastersysprocesses\x0d\wherehostname''and(@dbidisnullor)\x0d\if@includeip=0gotolb_show--如果不显示IP地址,就直接显示\x0d\declare@sqlvarchar(500),@hostnamenchar(128),@idint\x0d\createtable#ip(hostnamenchar(128),avarchar(200))\x0d\declaretbcursorlocalforselectdistincthostnamefrom#tb\x0d\opentb\x0d\fetchnextfromtbinto@hostname\x0d\while@@fetch_status=0\x0d\begin\x0d\set@sql='ping'+@hostname+'-a-n1-l1'\x0d\insert#ip(a)execmasterxp_cmdshell@sql\x0d\update#ipsetwherehostnameisnull\x0d\fetchnextfromtbinto@hostname\x0d\end\x0d\update#tbsetnet_ip=left(a,patindex('%:%',a)-1)\x0d\from#tbainnerjoin(\x0d\selecthostname,a=substring(a,patindex('Pingstatisticsfor%:%',a)+20,20)from#ip\x0d\wherealike'Pingstatisticsfor%:%')bonahostname=bhostname\x0d\lb_show:\x0d\selectid,数据库名=dbname,客户机名=hostname,用户名=loginname\x0d\,网卡物理地址=net_address,IP地址=net_ip,应用程序名称=prog_namefrom#tb\x0d\GO\x0d\\x0d\//显示所有本机的连接信息:\x0d\execp_getlinkinfo\x0d\//显示所有本机的连接信息,包含ip地址:\x0d\execp_getlinkinfo@includeip=1\x0d\//显示连接指定数据库的信息:\x0d\execp_getlinkinfo@dbname=表名,@includeip=1
以上就是关于C#中关键字在异常处理中的主要作用及使用过程全部的内容,包括:C#中关键字在异常处理中的主要作用及使用过程、如何获取SQLSERVER所有表的外键关系参数、SQLserver怎么获取当前 *** 作数据库的计算机名字等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)