易截截图软件、单文件、免安装、纯绿色、仅160KB

sql server里将十六进制转换成十进制

在网上找了很多,总是不知道怎么用,于是自己写了一个:
declare @strHex char(5),
@len int,
@intOut int,
@i int,
@charint int
set @strHex = '20'
set @len = len(rtrim(@strHex))
set @i = 1
set @intOut = 0
while @i <= @len
begin
set @charint = case substring(upper(rtrim(ltrim(@strHex))),@i,1)
when 'A' then 10
when 'B' then 11
when 'C' then 12
when 'D' then 13
when 'E' then 14
when 'F' then 15
else substring(@strHex,@i,1)
end
set @intOut = @intOut +@charint * power(16, @len-@i)
set @i = @i + 1
end
print @intOut 
由于要批量修改,帮写成了游标的形式:
use pubs
declare @strHex char(5),
@len int,
@intOut int,
@i int,
@charint int,
@keyname char(50)
declare hextoint cursor for
select rtrim(col001),rtrim(col002) from vv
open hextoint
fetch next from hextoint into @keyname,@strHex
while @@fetch_status =0
begin
set @len = len(rtrim(@strHex))
set @i = 1
set @intOut = 0
while @i <= @len
begin
set @charint = case substring(upper(rtrim(ltrim(@strHex))),@i,1)
when 'A' then 10
when 'B' then 11
when 'C' then 12
when 'D' then 13
when 'E' then 14
when 'F' then 15
else substring(@strHex,@i,1)
end
set @intOut = @intOut +@charint * power(16, @len-@i)
set @i = @i + 1
end
update vv set col002 = @intout where col001 = rtrim(@keyname)
--print @intOut
fetch next from hextoint into @keyname,@strHex
end
close hextoint
deallocate hextoint 
记以下留作以后参考吧。


相关文档:

Truncate Logs for SQL Server 2008

Truncate Logs for SQL Server 2008
I had previously posted how to Truncate Logs for SQL Server 2005. Unfortunately, this method does not work in SQL Server 2008. The reason is because the “WITH TRUNCATE_ONLY” command is no longer in SQL 2008. Assuming you run in full recovery mode, the n ......

[推荐] 深度对比Oracle与SQL Server [1]

本译文采用知识共享署名-非商业性使用-相同方式共享 3.0 Unported许可协议发布,转载请保留此信息
译者:马齿苋 | 链接:http://www.dbabeta.com/2010/oracle-sql-server-comparison-i.html
作者:Sadequl Hussain | 原文:http://www.sql-server-performance.com/articles/dba/oracle_sql_server_comparison_p1.aspx
一 ......

sql server 2000导出表结构

sql server 2000导出表结构
1.
SELECT   
表名=case when a.colorder=1 then d.name else '' end,   
表说明=case when a.colorder=1 then isnull(f.value,'') else '' end,   
字段序号=a.colorder,   
字段名=a.name,   
标识=case when COLUMNPROPERTY( a.id, ......

.NET程序防范SQL注入式攻击的方法

  一、什么是SQL注入式攻击?
  所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。在某些表单中,用户输入的内容直接用来构造(或者影响)动态SQL命令,或作为存储过程的输入参数,这类表单特别容易受到SQL注入式攻击。常见的SQL注入式攻击过程类如: ......

关于SQL的左右连接查询

一直以来对于SQL的查询都没怎么在意,今天遇到一个关于左连接查询的问题。
Select  uId ,uName,dpName
from users
left join dpart
on  users.pid=1 where u.pid=dpart.pid
结果是把users所有结果查询出来,而不是pid为1的用户
原来on后面必须放连接条件,其他的条件放在where里面
感谢夏欢提出 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号