动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ C/C++教程 ]的信息

本月文章推荐
.CGI编程的安全性 -- 文件名.
.C++中处理XML文件.
.如何利用Xerces C++正确处理XML文.
.哪一个奴隶不会死.
.Code Red 蠕虫攻击方式分析.
.c++经典.
.Visual FoxPro 9中新的数据处理方.
.a simple menu programme.
.关于全排列算法,大家请指导!.
.C语言程序设计(第4章 函数)--续.
.C++中动态内存分配引发问题的解决.
.TCP/IP网络重复型服务器通信软件.
.如何取得Memo的行和列.
.Turbo C 程序设计初步.
.C语言教程第四章: 数组.
.C++ Builder 初学问与答(十五).
.开机密码.
.Windows下C语言网络编程快速入门.
.用OLE操作Excel(Wangda补充).
.C语言基础:插入排序法.

C++中用BCB编SQL Server2000的扩展存储过程

发表日期:2008-3-8 |



  本文参考文章:
MD5 Hash SQL Server Extended Stored Procedure
作者: Vic Mackey
文章链接: http://www.codeproject.com/database/XP_md5.ASP
原文是用 Visual C++ 编的程序, 本文的程序是原文的程序修改成的 C++ Builder 程序。

--------------------------------------------------------------------------------
这个存储过程是计算 MD5 值的,可以用来进行密码认证加密等。
SQL Server 的扩展存储过程 (Extended Stored Procedure, 简称 XP) 是通过在 MSSQL 数据库注册封装在 .dll 里面的函数实现的,
而这个 .dll 应该按照 M$ 提供的规则, 并且要连接 MSSQL 的库文件。由于 C++ Builder 自带的 MSSQL 库文件 OPENDS60.LIB 比较旧,
本文提供新版本的 OPENDS60.LIB 库文件, 支持 MSSQL 2000 版本的。

--------------------------------------------------------------------------------
【安装方法】
① 通过执行 SQL 语句注册存储过程:
打开 Master 数据库,然后执行下面 SQL 语句
EXEC sp_addextendedproc 'xp_md5', 'd:\pathname\xp_md5.dll'
假如注册的文件不包含路径,只有文件名,MSSQL会在这个文件夹里面找这个.dll
C:\Program Files\Microsoft SQL Server\MSSQL\Binn

② 创建用来支持 select 语句的 MD5 函数 fn_md5
打开想要执行这个存储过程的用户数据库,执行下面的 SQL:

CREATE FUNCTION fn_md5 (@string VARCHAR(8000))
RETURNS CHAR(32) AS
BEGIN
  DECLARE @hash CHAR(32)
  EXEC master.dbo.xp_md5 @string, @hash OUTPUT
  RETURN @hash
END

【使用方法】
① 直接执行, 由于 xp_md5 在 master 数据库里面, 所以前面必须有 master.
EXEC master.dbo.xp_md5 'Hello world!'
② 通过 fn_md5 支持 select 语句, 这个函数在用户当前使用的数据库里面.
SELECT dbo.fn_md5('Hello world!')

【程序说明】
xp_md5.bpr      存储过程 C++ Builder 6.0 工程文件
OPENDS60.LIB    由于 C++ Builder 自带的文件比较旧,支持 MSSQL 7 的,这个程序带了一个 OPENDS60.LIB 文件,支持 MSSQL 2000
md5.h           Christophe Devine 原作,没做任何修改
md5.cpp         Christophe Devine 原作,没做任何修改
xp_md5_main.cpp 存储过程主程序文件,根据 Vic Mackey 的存储过程修改的

在创建工程的时候用 DLL 向导生成就可以了,没有非凡的要求,存储过程函数需要按规定的格式:
__declspec(dllexport) SRVRETCODE WINAPI xpname(SRV_PROC* pSrvProc)
其中 xpname 是存储过程的名,其他的都是规定的格式不能变
另外存储过程 .dll 文件也必须包含这个函数:
__declspec(dllexport) ULONG WINAPI __GetXpVersion()
具体的内容请下载源程序看,比较简单。
函数的说明请参阅 MSDN 的这里:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/odssql/ods_6_ref_02_8k2t.asp
上一篇:C++中将ListView中的内容导出到Word和Excel(新) 人气:539
下一篇:C++中数组和指针类型的关系 人气:293
浏览全部C/C++的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-8 OpenPNE中文 v2.12.3 bulid 0810
2008-10-8 ADN视频收藏专家 v3.5.1008 标准
2008-10-8 捌度出品之Google近日收录查询系
2008-10-8 捌度出品之Google近日收录查询系
2008-10-8 94xhcms v1.1 bulid 081006 beta
2008-10-8 天空网络电影系统SKYUC v2.5.9 简
2008-10-8 60度CMS v1.0 Build 081007
2008-10-8 SiteDynamic企业网站管理系统 v1
2008-10-8 IntCRM v2.30 SQL
2008-9-29 酷狗音乐(原KuGoo)2008 v5.310 正
2008-9-29 QQTab 1.1
2008-9-29 网络传送带 Net Transport 2.64a
2008-9-29 谷歌金山词霸v1.8
2008-9-29 TweakVI 1.0 Build 1090
2008-9-29 ACDSee Pro 2.5 Build 333 汉化绿
2008-9-29 Winamp v5.541(2189) 周明波简体
2008-9-27 CCleaner 2.12.651
2008-9-27 Mozilla Thunderbird 2.0.0.17 英
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成