通過(guò)T-SQL語(yǔ)句創(chuàng)建游標(biāo)與實(shí)現(xiàn)數(shù)據(jù)庫(kù)加解密功能
通過(guò)動(dòng)態(tài)SQL語(yǔ)句創(chuàng)建游標(biāo)
DECLARE @sql varchar(100);
DECLARE @TableName varchar(32);
DECLARE @FieldName varchar(32);
DECLARE @PrimaryKey varchar(32);
DECLARE @DbValue varchar(32);
DECLARE @PKey int;
--賦值
set @TableName='Student';
SET @FieldName='Name';
SET @PrimaryKey='Id';
--創(chuàng)建動(dòng)態(tài)游標(biāo)
set @sql = 'declare rowCursor cursor For select '+@PrimaryKey+' as PKey , '+@FieldName
+' as DbValue from '+@TableName;
EXEC(@sql);
--打開(kāi)游標(biāo)
OPEN rowCursor;
--取值
fetch next from rowCursor into @PKey,@DbValue;
--循環(huán)
while(@@FETCH_STATUS=0)
begin
declare @ExecSql varchar(100);
set @ExecSql='Update '+@TableName +' set '+@FieldName+' = 234324324';
PRINT @ExecSql
EXEC(@ExecSql)
fetch next from rowCursor into @PKey,@DbValue;
end
--關(guān)閉游標(biāo)
close rowCursor;
--釋放游標(biāo)控件
deallocate rowCursor;通過(guò)T-SQL語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)庫(kù)加解密功能
CREATE TABLE [dbo].[Users]
(
[U_nbr] NVARCHAR(20) NOT NULL PRIMARY KEY,
[Pwd] nvarchar(MAX)
)
--加密
DECLARE @Pwd nvarchar(max)
SET @Pwd='測(cè)試加密'
--將varbinary類(lèi)型轉(zhuǎn)換成varchar類(lèi)型
INSERT INTO Users VALUES ('admin',sys.fn_varbintohexstr(ENCRYPTBYPASSPHRASE('32423sd',@Pwd)))
SELECT * FROM Users
DECLARE @pv varbinary(max)
DECLARE @str nvarchar(max)
DECLARE @sql nvarchar(max)
--將varchar類(lèi)型轉(zhuǎn)換成varbinary類(lèi)型
SELECT @str='0x0100000079e98bc2209c61038f9fc2eaaba24d6b8daad08fd98a41b6'
set @sql=N'set @p='+@str+N';'
exec sp_executesql @sql,
N'@p as varbinary(max) output',
@p=@pv output
PRINT @pv
--解密
SELECT CONVERT(VARCHAR(MAX), DecryptByPassPhrase('123ASSDSS',@pv))
GO到此這篇關(guān)于通過(guò)T-SQL語(yǔ)句創(chuàng)建游標(biāo)與實(shí)現(xiàn)數(shù)據(jù)庫(kù)加解密功能的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- SQL Server 事務(wù),異常和游標(biāo)詳解
- SQL中游標(biāo)(cursor)的基本使用實(shí)例
- SQL Server 開(kāi)窗函數(shù) Over()代替游標(biāo)的使用詳解
- 詳解SQL游標(biāo)的用法
- SQL Server游標(biāo)的介紹與使用
- Sql Server臨時(shí)表和游標(biāo)的使用小結(jié)
- SQL Server查看未釋放游標(biāo)的方法
- SQL Server使用游標(biāo)處理Tempdb究極競(jìng)爭(zhēng)-DBA問(wèn)題-程序員必知
- sql 取代游標(biāo)的寫(xiě)法示例
- MS SQL Server游標(biāo)(CURSOR)的學(xué)習(xí)使用
- SQL Server 游標(biāo)語(yǔ)句 聲明/打開(kāi)/循環(huán)實(shí)例
- SQL Server游標(biāo)的使用/關(guān)閉/釋放/優(yōu)化小結(jié)
- SQL Server遍歷表中記錄的2種方法(使用表變量和游標(biāo))
相關(guān)文章
Sql Server 創(chuàng)建數(shù)據(jù)庫(kù)腳本Create DATABASE
這篇文章主要介紹了Sql Server 創(chuàng)建數(shù)據(jù)庫(kù)腳本語(yǔ)句Create DATABASE的使用,需要的朋友可以參考下2014-08-08
SQL將一個(gè)表中的數(shù)據(jù)插入到另一個(gè)表中的方法
這篇文章介紹了SQL將一個(gè)表中的數(shù)據(jù)插入到另一個(gè)表中的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02
必須會(huì)的SQL語(yǔ)句(四) 數(shù)據(jù)刪除和更新
這篇文章主要介紹了sqlserver中數(shù)據(jù)刪除和更新的sql語(yǔ)句,需要的朋友可以參考下2015-01-01
SQL Server 2005/2008 用戶數(shù)據(jù)庫(kù)文件默認(rèn)路徑和默認(rèn)備份路徑修改方法
本環(huán)境是SQL Server 2005 Standard Version 64-bit 和 SQL Server 2008 Standard Version 64-bit 雙實(shí)例同時(shí)安裝在一個(gè)2010-04-04
Windows Server 2008 Standard Version 64-bit OS上
SQL實(shí)現(xiàn)遞歸及存儲(chǔ)過(guò)程中In()參數(shù)傳遞解決方案詳解
這篇文章詳細(xì)介紹了SQL實(shí)現(xiàn)遞歸及存儲(chǔ)過(guò)程中In()參數(shù)傳遞解決方案,有需要的朋友可以參考一下2013-09-09
SQL Server誤區(qū)30日談 第5天 AWE在64位SQL SERVER中必須開(kāi)啟
在坊間流傳的有關(guān)AWE的設(shè)置的各種版本讓人非常困惑。比如說(shuō)如何設(shè)置起作用,如何設(shè)置不起作用,在32位和64位上是否需要AWE等2013-01-01

