天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

ASP.NET調用.sql文件(二)

  筆者前一陣子發表了一篇《ASP.NET調用.sql文件》文章,主要是是解決數據庫配置,減去傳統手工附加數據庫和自己改寫web.config文件等等這些復雜的過程,而是配置的向導。其中給出關鍵的技術知識點,就是通過sql數據庫生成數據庫腳本即.sql文件,然后通過調用osql.exe來執行.sql文件。

  這里,園友首先質疑了其安全性,認為程序存在被他人利用的危險。筆者對這方面沒有太多經驗,希望來位高人講講這方面的知識或者演示被利用的過程。所以這塊還是一個未知的領域,筆者也不敢保證絕對安全,但是至少目前來沒有提出具體的實例來說有危險。

  其次園友提出了本機器上沒有數據庫的可能性,即程序在一臺服務器,數據庫在另外一臺數據庫服務器上,確實如果沒有數據庫那么上篇文章提到方法就落空了。但是筆者認為這種可能性比較小,因為這種可能性只有說明程序非常大,而且應該是定制軟件團隊親自派人過去配置。

  然后筆者在后來調試程序發現,按上篇文章配置數據庫發現缺失部分存儲過程。筆者的數據庫里內容大致分為(數據表,函數,視圖,存儲過程,數據)這5個部分,由于存儲過程很多所以開始沒有發現。細致找下原因發現存儲過程中部分程序代碼里包含中文字符,而調用osql.exe其實就是在cmd控制臺里執行,cmd不支持中文,所以造成部分存儲過程丟失。期間當然上網查找解決方法,首先想到的是通過來轉換編碼方式,經過調試發現不能解決。

  所以最后解決方法只有兩種:第一將中文字符轉換為英文字符,這點不可能。第一中文字符比較多,這里數據與程序對應,這里修改意味著程序里也要對應的修改,工作量比較大。那么第二種就是通過程序來向sql里建立(函數,視圖,存儲過程)。例如:存儲過程是數據庫里倒出來的。具體格式為

USE [magazinedb]
GO
/****** Object: StoredProcedure [dbo].[Update_MagazineInformation_HZJ] Script Date: 11/25/2010 10:25:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--更新雜志信息
create procedure [dbo].[Update_MagazineInformation_HZJ]
(
@TabName varchar(20),
@TypeID decimal,
@TypeName varchar(20),
@TypeRemark varchar(100),
@TypeDate datetime
)
as
begin
exec('
update
'+@TabName+' set [name]='''+@TypeName+''',Remark='''+@TypeRemark+''',Date='''+@TypeDate+'''
where ID=
'''+@TypeID+'''
')
end
GO
/****** Object: StoredProcedure [dbo].[UP_UserLogin_userPwd_LX] Script Date: 11/25/2010 10:25:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[UP_UserLogin_userPwd_LX]
@loginId DECIMAL,
@oldUserPwd VARCHAR(60),
@newUserPwd VARCHAR(60),
@result INT OUTPUT
AS
BEGIN
DECLARE @pwd VARCHAR(60)
SELECT @pwd = userPwd FROM magazineDB..UserLogin WHERE loginId = @loginId
IF @pwd <> @oldUserPwd
SET @result = 0
ELSE
BEGIN
UPDATE magazineDB..UserLogin SET userPwd = @newUserPwd WHERE loginId = @loginId
SET @result = 1
END
END
GO
/****** Object: StoredProcedure [dbo].[UP_UserLogin_SeekPwd_GW] Script Date: 11/25/2010 10:25:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create PROCEDURE [dbo].[UP_UserLogin_SeekPwd_GW]
@loginId DECIMAL,
@newUserPwd VARCHAR(60)
AS
BEGIN
UPDATE magazineDB..UserLogin SET userPwd = @newUserPwd WHERE loginId = @loginId
END
GO
/****** Object: StoredProcedure [dbo].[UP_user_readState_LX] Script Date: 11/25/2010 10:25:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[UP_user_readState_LX]
@userID DECIMAL,
@readState VARCHAR(20)
AS
BEGIN
UPDATE magazineDB..[user] SET readState = @readState WHERE userID = @userID
END
GO
。。。
。。。

NET技術ASP.NET調用.sql文件(二),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 最近免费中文字幕完整版HD | 亚洲午夜精品AV无码少妇 | www.国产精品视频 | 嫩草影院在线观看精品 | 色中色最新地址登陆 | WRITEAS检查身体| 国产一区二区精品视频 | 亚洲精品一区三区三区在线观看 | 精品 在线 视频 亚洲 | 泡妞高手在都市免费观看 | 原神美女被超污app 御姐被吸奶 | 国产欧美无码亚洲毛片 | 我和妽妽在厨房里的激情区二区 | 嘟嘟嘟WWW免费高清在线中文 | 真实处破女全过程完免费观看 | 在线观看国产精选免费 | 国产午夜伦伦伦午夜伦 | 国产成人免费网站在线观看 | 老司机午夜影院味味 | 日日噜噜夜夜狠狠视频 | 无颜之月5集全免费看无删除 | 国产精品成久久久久三级四虎 | 欧美の无码国产の无码影院 | 九九热久久只有精品2 | 国产成人精品久久一区二区三区 | 精品无码一区二区三区中文字幕 | 手机在线亚洲日韩国产 | 琪琪色在线播放 | 精品午夜久久福利大片免费 | 久久人人玩人妻潮喷内射人人 | 叮当成人社区 | 色戒西瓜视频 | 69人体阴展网| 国产免费人成在线看视频 | 动漫在线观看免费肉肉 | 国产精品国产三级国产专区53 | 美女教师朝桐光在线播放 | 欧美fxxx| 亚洲在线成色综合网站 | 99er4久久视频精品首页 | 俄罗斯破处|