中易网

ACCESS和SQL数据库怎么让输入的密码,转换成密文的方式保存在数据库中啊?谢谢了.

答案:2  悬赏:20  
解决时间 2021-02-15 08:00
ACCESS和SQL数据库怎么让输入的密码,转换成密文的方式保存在数据库中啊?谢谢了.
最佳答案
密码字段类型改成 varbinary(255)

--新增或修改密码
create proc modifypwd
@uid varchar(16),@pwd varchar(16)
as
declare @encode varbinary(255)
set @encode=convert(varbinary(255),pwdencrypt(@pwd))
if exists(select uid from [user] where uid=@uid)
update [user] set pwd=@encode where uid=@uid
else
insert into [user](uid,pwd) values(@uid,@encode)
go

--判断密码是否正确
CREATE proc checkid
@uid varchar(16),@pwd varchar(16)
as
declare @encode varbinary(255)
select @encode=pwd from [user] where uid=@uid
if pwdcompare(@pwd,@encode,0)='1'
select '登录成功'
else
select '用户名或密码错'
GO
全部回答
很多朋友想用sql2000数据库的编程方法,但是却又苦于自己是学access的,对sql只是一点点的了解而已,这里我给大家提供以下参考---将access转化成sql2000的方法和注意事项 一,首先,我说的是在access2000,sql2000之间转换,其他的我也还没有尝试过,希望大家多多试验,肯定是有办法的; 二,转换的方法 1,打开”控制面板“下”管理工具“中的”数据库源“; 2,按”添加“添加一个新的数据源,在选择栏里选“driver do microsoft access (*.mdb)”,完成后将出现一个框,在“数据库源”里面输入你想写的名称,我取名叫“abc”,说明不需要填,接着,按下面的选择,寻找你的数据库地址和选中(注意,请先备份自己的access数据库),然后确定。数据源在这里建好了,剩下转换了。 3,打开sql2000企业管理器,进入数据库,新建一个空的数据库“abc”; 4,选择新建立的数据库,按鼠标右键,选择“所有任务”下“导入数据”,按“下一步”继续; 5,在数据库源下拉但中选择”driver do microsoft access(*.mdb)“,在”用户/系统dsn“中,选种你刚才添加的”abc“,按 ”下一步“; 6,“目的”不需要修改,选择服务器(一般下为自己的本机local,也可以选择服务器地址或者局域网地址,确定你的权限是否可以操作,),使用windows 身份验证指用自己的系统管理员身份操作,使用sql身份操作验证可以用于网站的操作,推荐用后者; 7,选上使用sql身份操作验证后,填写你的用户名和密码,我自己选择的是系统默认号码sa,****,数据库选择刚新建的abc,按下一步; 8,这一步的两个单项选择,从数据源复制表和视图与用一条查询指令指定要传输的数据,选择前者,按下一步继续; 9,这里将出现你自己access数据库的表,按全选后,下一步; 10,dts导入/导出向导,看立即运行被选中按下一步, 11,按完成继续; 12,这个步骤你将看到你的数据被导入sql2000里面,当出现已经成功把xxx个表导入到数据库的字样,而且所有的表前面都有绿色的勾,就表示成功导入所有数据,如果中途出现问题或者表前面有红色的叉的话,说明该表没有成功导入,这时就要回去查看自己的操作是否正确了. 三,数据修改 1,由于sql2000里面没有自动编号,所以你的以自动编号设置的字段都会变成非空的字段,这就必须手工修改这些字段,并把他的标示选择是,种子为1,增量为1, 2,另外,access2000转换成sql2000后,原来属性为是/否的字段将被转换成非空的bit,这时候你必须修改成自己想要的属性了; 3,另外,大家要注意对时间函数的把握.access与sql是有很多不同的. access转ms sql数据库的几点经验 1.access的数据库中的自动编号类型在转化时,sql server并没有将它设为自动编号型,我们需在sql创建语句中加上identity,表示自动编号! 2.转化时,跟日期有关的字段,sql server默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大。我遇见这种情况,用smalldatetime型时,转化失败,而用datetime型时,转化成功。 3.对此两种数据库进行操作的sql语句不全相同,例如:在对access数据库进行删除纪录时用:delete * from user where id=10,而对sql server数据库进行删除是用:delete user where id=10. 4.日期函数不相同,在对access数据库处理中,可用date()、time()等函数,但对sql server数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。 5.在对access数据库处理中,sql语句中直接可以用一些vb的函数,像cstr()函数,而对sql server数据库处理中,却不能用。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
从深圳到浙江乌镇游
曾经黑龙江齐齐哈尔有很多女孩子招收尿奴的,
男朋友性格很倔而且他的父母特别护孩子
怎么让橡皮重新套进去
我男友在我之前和女生发生过性关系,我们结婚
经典轩逸倒档挂不上是怎么回事
广州地铁去广从二路怎么去?
白蚁吃新鲜树木还是腐生树木?
私地地址有知道的么?有点事想过去
64位系统能不能安装cad2006
72V电动车.充电器接电源不接电动车时家里漏保
乌石岩这个地址在什么地方,我要处理点事
神华杭锦能源本科生进去的待遇怎么样?
豫园门口的九曲桥怎么去?
vivoX5l安装不了,显示未安装!
推荐资讯
为什么我感觉不到我在早博?
有一部韩剧,一开始在校园里,男主在一个地方
求一本小说,男主是太子,叫即墨城,后来中毒
麒麟区文华街道桂花社区居民委员会在哪里啊,
我刚到一家物业公司做物业主管,我没什么经验
西安白鹿搪瓷有限公司怎么去啊,有知道地址的
我想要上网多不要语音请问用什么卡
音量键按不了音量,但是可以看小说翻页码,这
梦见被大便挡的无路可走
一个圆柱的底面半径是八厘米。高是十五厘米。
当兵体检过后复检要不要交额外的钱
八四年双子座和九零年那个星座配对最好
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?