日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > 充電吧
[導(dǎo)讀]54powerman(54powerman@163.com)說(shuō)兩句:在某人最困難的時(shí)候,寫(xiě)下此文,寄給某某報(bào)想騙點(diǎn)稿費(fèi),結(jié)果石沉大海,若干年后,翻騰硬盤(pán)翻出來(lái)了。呵呵,或許可以對(duì)希望在SqlServe

54powerman(54powerman@163.com)

說(shuō)兩句:在某人最困難的時(shí)候,寫(xiě)下此文,寄給某某報(bào)想騙點(diǎn)稿費(fèi),結(jié)果石沉大海,若干年后,翻騰硬盤(pán)翻出來(lái)了。呵呵,或許可以對(duì)希望在SqlServer中發(fā)送郵件的網(wǎng)友有所幫助。

54powerman^_^


??? Sql Mail技術(shù)給每一位數(shù)據(jù)庫(kù)開(kāi)發(fā)人員和DBA(數(shù)據(jù)庫(kù)管理員)帶來(lái)了極大的方便,利用該技術(shù),Sql Server數(shù)據(jù)庫(kù)代理程序可以在系統(tǒng)出現(xiàn)異常的時(shí)候自動(dòng)發(fā)送Email通知管理員,開(kāi)發(fā)人可以利用它讓數(shù)據(jù)庫(kù)自動(dòng)定期的修改用戶(hù)密碼,然后發(fā)送Email通知用戶(hù)……等等這些應(yīng)用,都不同程度上把我們從繁雜的工作中解放出來(lái)。但是,Sql Mail的配置是比較復(fù)雜的,相信90%以上的人在配置Sql Mail的時(shí)候都遇到過(guò)各種各樣的麻煩,至少有70%的人放棄了Sql Mail而選擇其他方案來(lái)解決這個(gè)問(wèn)題。筆者是一名Web開(kāi)發(fā)人員,親身經(jīng)歷了這一切,并找到了一個(gè)更好的替代方法。不敢獨(dú)享,寫(xiě)出來(lái)以饗讀者。
Sql Mail配置有幾種方式,按照支持軟件可劃分為基于Exchange、Outlook2000(以上)和第三方軟件的配置方案,三種方式各有利弊,主要表現(xiàn)在以下幾個(gè)方面:

??? 使用Outlook客戶(hù)端配合Sql Server實(shí)現(xiàn)Sql Mail
??? 此方案軟件要求較低,只需要在Sql Server所在服務(wù)器上安裝Outlook2000以上版本客戶(hù)端即可。它要求在Sql Mail使用期間,OutLook客戶(hù)端必須打開(kāi),否則,只能到下次打開(kāi)時(shí),郵件才能發(fā)送出去。另外,如果服務(wù)器為遠(yuǎn)程服務(wù)器,用微軟官方的遠(yuǎn)程桌面無(wú)法完成配置,可替代的方案是DBA親自去機(jī)房直接操作,或者安裝PcAnywhere10替代遠(yuǎn)程桌面進(jìn)行操作。

??? 使用Exchange要求較高
??? Microsoft推薦使用Exchange作為Sql Mail的最佳拍檔,MSDN的資料提出:“由于 POP3/SMTP 協(xié)議存在的局限性和登錄問(wèn)題,Microsoft 建議您使用 Exchange Server 來(lái)實(shí)現(xiàn)可靠性”。但是Exchange并不是專(zhuān)門(mén)做這個(gè)來(lái)使用的,可以說(shuō)是屈才了,而且Exchange要求服務(wù)器配置域管理器,相信這個(gè)東東對(duì)大多數(shù)數(shù)據(jù)庫(kù)服務(wù)器來(lái)說(shuō)用處不大,只不過(guò)是浪費(fèi)資源罷了。如果我們要在多臺(tái)服務(wù)器上配置Sql Mail那么就需要在每一臺(tái)服務(wù)器上配置域管理器,或者所有的服務(wù)器都配置到一個(gè)域內(nèi),但是對(duì)于服務(wù)器比較分散的系統(tǒng)來(lái)說(shuō)這樣是不現(xiàn)實(shí)的。

??? 使用第三方系統(tǒng)支持
??? 微軟MSDN稱(chēng):“如果您使用的是第三方郵件服務(wù)器,則必須將郵件服務(wù)器配置為 POP3 服務(wù)器。如果這些郵件服務(wù)器使用的本地郵件服務(wù)可能是由第三方郵件客戶(hù)端安裝的,Microsoft 將不支持連接到這些服務(wù)器”。這就意味著你還要使用Windows平臺(tái)的郵件服務(wù),使用ASP編寫(xiě)網(wǎng)站的朋友一定都知道,Cdonts.dll組件實(shí)在是……。
面對(duì)這些問(wèn)題,筆者就變成了我剛才說(shuō)的那70%了,雖然爬網(wǎng)無(wú)數(shù),讀文字?jǐn)?shù)萬(wàn)把Sql Mail配置好了,但是我仍然絕對(duì)放棄,因?yàn)槲也幌朐谧龅?臺(tái)、第3臺(tái)……的時(shí)候重蹈覆轍。替代的方案就是Jmail組件+OLE自動(dòng)化對(duì)象,以上的問(wèn)題迎刃而解。

??? 預(yù)備知識(shí)
??? 1.OLE自動(dòng)化函數(shù)
??? OLE自動(dòng)化使應(yīng)用程序能夠?qū)α硪粋€(gè)應(yīng)用程序中實(shí)現(xiàn)的對(duì)象進(jìn)行操作,或者將對(duì)象公開(kāi)以便可以對(duì)其進(jìn)行操作。自動(dòng)化客戶(hù)端是可對(duì)屬于另一個(gè)應(yīng)用程序的公開(kāi)對(duì)象進(jìn)行操作的應(yīng)用程序,本文值得是Sql Server。公開(kāi)對(duì)象的應(yīng)用程序稱(chēng)為自動(dòng)化服務(wù)器,又成為自動(dòng)化組件,本文中即Jmail組件咯。客戶(hù)端通過(guò)訪問(wèn)應(yīng)用程序?qū)ο蟮膶傩院秃瘮?shù)對(duì)這些對(duì)象進(jìn)行操作。
??? 在Sql Server使用Ole組件的途徑是幾個(gè)系統(tǒng)擴(kuò)展存儲(chǔ)過(guò)程sp_OACreate、sp_OADestroy、sp_OAGetErrorInfo、sp_OAMethod、sp_OASetProperty和sp_OAGetProperty,再次簡(jiǎn)單地介紹一下使用方法,詳細(xì)資料參考Sql Server聯(lián)機(jī)叢書(shū)。
??? OLE自動(dòng)化對(duì)象的使用方法:
??? (1)調(diào)用 sp_OACreate 創(chuàng)建對(duì)象。
??? 格式:sp_OACreate clsid,objecttoken OUTPUT [ , context ]
??? 參數(shù):clsid——是要?jiǎng)?chuàng)建的 OLE 對(duì)象的程序標(biāo)識(shí)符 (ProgID)。此字符串描述該 OLE 對(duì)象的類(lèi),其形式,如 'OLEComponent.Object',OLEComponent 是 OLE 自動(dòng)化服務(wù)器的組件名稱(chēng),Object 是 OLE 對(duì)象名,本文中使用的“JMail.Message”;
Objecttoken——是返回的對(duì)象標(biāo)志,并且必須是數(shù)據(jù)類(lèi)型為 int 的局部變量。用于標(biāo)識(shí)所創(chuàng)建的 OLE 對(duì)象,并將在調(diào)用其它 OLE 自動(dòng)化存儲(chǔ)過(guò)程時(shí)使用。本文中就是通過(guò)它來(lái)調(diào)用JMail.Message組件的屬性和方法的。
??? Context——指定新創(chuàng)建的 OLE 對(duì)象要在其中運(yùn)行的執(zhí)行上下文。本文不使用該參數(shù),故不贅述。以下與此一致,所有方法屬性的其他用法請(qǐng)參閱Sql Server聯(lián)機(jī)文檔。
??? (2)使用該對(duì)象。
??? (a)調(diào)用 sp_OAGetProperty 獲取屬性值。
??? 格式:_OAGetProperty objecttoken,propertyname [, propertyvalue OUTPUT]
??? 參數(shù):(前面出現(xiàn)過(guò)的參數(shù),以下均省略。)
??? Propertyname——對(duì)象的屬性名稱(chēng);
??? Propertyvalue——返回的對(duì)象的屬性值,該參數(shù)帶OUTPUT屬性,執(zhí)行該操作后,你就可以從propertyvalue中得到屬性的值了。
??? (b)調(diào)用 sp_OASetProperty 將屬性設(shè)為新值。
??? 格式:sp_OASetProperty objecttoken, propertyname, propertyvalue
??? (c)調(diào)用 sp_OAMethod 以調(diào)用某個(gè)方法。
??? 格式:sp_OAMethod objecttoken, methodname [, returnvalue OUTPUT] [ , [ parametername = ] parametervalue? [...n]]
??? 參數(shù):Returnvalue——調(diào)用方法的返回值,如果沒(méi)有返回值,此參數(shù)設(shè)置為NULL;
??? Parametername——方法定義中的參數(shù)名稱(chēng),也就是形參;
??? Parametervalue——參數(shù)值;
??? ……n——表示,可以帶很多參數(shù),個(gè)數(shù)由方法定義限制;
??? (d)調(diào)用 sp_OAGetErrorInfo 獲取最新的錯(cuò)誤信息。
??? 格式:sp_OAGetErrorInfo [objecttoken ] [, source OUTPUT] [, description OUTPUT]
??? 參數(shù):Source——錯(cuò)誤源;
??? Description——錯(cuò)誤描述;
??? (3)調(diào)用 sp_OADestroy 釋放對(duì)象。
??? 格式:sp_OADestroy objecttoken

??? 2.xp_cmdshell擴(kuò)展存儲(chǔ)過(guò)程
??? 該擴(kuò)展存儲(chǔ)過(guò)程在master數(shù)據(jù)庫(kù)中,它的全路徑是master..xp_cmdshell(注意,中間是2個(gè)點(diǎn)),它的功能是:以操作系統(tǒng)命令行解釋器的方式執(zhí)行給定的命令字符串,并以文本行方式返回任何輸出。
??? 格式:xp_cmdshell {'command_string'} [, no_output]
??? 參數(shù):'command_string'——是在操作系統(tǒng)命令行解釋器上執(zhí)行的命令字符串。
??? no_output——是可選參數(shù),表示執(zhí)行給定的 command_string,但不向客戶(hù)端返回任何輸出。本文應(yīng)用中不使用該參數(shù)。

??? 操作方法
??? (1)軟件準(zhǔn)備
??? 請(qǐng)先到http://www.dimac.net/或者國(guó)內(nèi)提供組件下載的網(wǎng)站下載最新版的JMail組件,如果你得到的是安裝版,執(zhí)行weJMailx.exe即可,系統(tǒng)的配置安裝程序會(huì)自動(dòng)完成。如果只有一個(gè)JMail.dll文件,請(qǐng)按照下面的步驟安裝:
??? (a)新建文本文件,輸入如下命令:
??? regsvr32 JMail.dll
??? net start w3svc
??? 另存為Install.Bat(注意,千萬(wàn)不要保存成Install.Bat.Txt?。?br />??? (b)此文件連同Jmail.dll一起拷貝到Sql Server數(shù)據(jù)庫(kù)服務(wù)器的System32目錄下,并執(zhí)行雙擊Install.Bat即可。
??? (2)準(zhǔn)備好了嗎?跟我來(lái)吧
??? (a)運(yùn)行Sql Server查詢(xún)分析器,并以sa身份登錄到Sql Server數(shù)據(jù)庫(kù);
??? (b)如果你的存儲(chǔ)過(guò)程要添加到Y(jié)ourDefaultCatalog數(shù)據(jù)庫(kù),請(qǐng)?jiān)诳瞻譙ql窗口輸入如下指令,否則請(qǐng)相應(yīng)修改數(shù)據(jù)庫(kù)名。
??? Use YourDefaultCatalog
??? 按F5或者運(yùn)行按鈕運(yùn)行該指令;
??? (c)創(chuàng)建基本發(fā)送存儲(chǔ)過(guò)程
??? 復(fù)制如下代碼到Sql Server命令窗口,并運(yùn)行。下面的代碼中有相應(yīng)的注釋?zhuān)闹胁欢嘧鼋忉專(zhuān)缬幸蓡?wèn)請(qǐng)查看前面的“預(yù)備知識(shí)”或者查詢(xún)Sql Server幫助文件,當(dāng)然也可以和作者聯(lián)系。

Create Procedure dbo.sp_jmail_send
@sender varchar(100),
@sendername varchar(100)='',
@serveraddress varchar(255)='SMTP服務(wù)器地址',
@MailServerUserName varchar(255)=null,
@MailServerPassword varchar(255)=null,
@recipient varchar(255),
@recipientBCC varchar(200)=null,
@recipientBCCName varchar(200)=null,
@recipientCC varchar(200)=null,
@recipientCCName varchar(100)=null,
@attachment varchar(100) =null,
@subject varchar(255),
@mailbody text
As
/*
該存儲(chǔ)過(guò)程使用辦公自動(dòng)化腳本調(diào)用Dimac w3 JMail AxtiveX組件來(lái)代替Sql Mail發(fā)送郵件
該方法支持“服務(wù)器端身份驗(yàn)證”
*/
--聲明w3 JMail使用的常規(guī)變量及錯(cuò)誤信息變量
Declare @object int,@hr int,@rc int,@output varchar(400),@description varchar (400),@source varchar(400)

--創(chuàng)建JMail.Message對(duì)象

Exec @hr = sp_OACreate 'jmail.message', @object OUTPUT

--設(shè)置郵件編碼
Exec @hr = sp_OASetProperty @object, 'Charset', 'gb2312'

--身份驗(yàn)證
If Not @MailServerUserName is null
Exec @hr = sp_OASetProperty @object, 'MailServerUserName',@MailServerUserName
If Not @MailServerPassword is null
Exec @hr = sp_OASetProperty @object, 'MailServerPassword',@MailServerPassword

--設(shè)置郵件基本參數(shù)
Exec @hr = sp_OASetProperty @object, 'From', @sender
Exec @hr = sp_OAMethod @object, 'AddRecipient', NULL , @recipient
Exec @hr = sp_OASetProperty @object, 'Subject', @subject
Exec @hr = sp_OASetProperty @object, 'Body', @mailbody

--設(shè)置其它參數(shù)
if not @attachment is null
exec @hr = sp_OAMethod @object, 'Addattachment', NULL , @attachment,'false'
print @attachment
If (Not @recipientBCC is null) And (Not @recipientBCCName is null)
Exec @hr = sp_OAMethod @object, 'AddRecipientBCC', NULL , @recipientBCC,@recipientBCCName
Else If Not @recipientBCC is null
Exec @hr = sp_OAMethod @object, 'AddRecipientBCC', NULL , @recipientBCC

If (Not @recipientCC is null) And (Not @recipientCCName is null)
Exec @hr = sp_OAMethod @object, 'AddRecipientCC', NULL , @recipientCC,@recipientCCName
Else If Not @recipientCC is null
Exec @hr = sp_OAMethod @object, 'AddRecipientCC', NULL , @recipientCC

If Not @sendername is null
Exec @hr = sp_OASetProperty @object, 'FromName', @sendername

--調(diào)用Send方法發(fā)送郵件
Exec @hr = sp_OAMethod @object, 'Send', null,@serveraddress

--捕獲JMail.Message異常
Exec @hr = sp_OAGetErrorInfo @object, @source OUTPUT, @description OUTPUT

if (@hr = 0)
Begin
Set @output='錯(cuò)誤源: '+@source
Print @output
Select @output = '錯(cuò)誤描述: ' + @description
Print @output
End
Else
Begin
Print '獲取錯(cuò)誤信息失敗!'
Return
End

--釋放JMail.Message對(duì)象
Exec @hr = sp_OADestroy @object

??? (d)簡(jiǎn)化存儲(chǔ)過(guò)程操作,以適合我們平時(shí)的使用習(xí)慣
??? 上面的存儲(chǔ)過(guò)程基本可以完成郵件發(fā)送操作,但是非常冗長(zhǎng),而且不符合我們的習(xí)慣,比如它不支持多個(gè)發(fā)送給接收者、不支持將Sql指令運(yùn)行結(jié)果以附件形式發(fā)送(這是Sql Mail的功能,我們也可以做到)等,所以我們要再寫(xiě)一個(gè)存儲(chǔ)過(guò)程來(lái)調(diào)用它,以簡(jiǎn)化操作,并擴(kuò)展功能。

Create Procedure SendMail
@Sender varChar(50)=null,
@strRecipients varChar(200),
@strSubject varChar(200),
@strMessage varChar(2000),
@sql varChar(50)=null)
As

Declare @SplitStr varchar(1)?--定義郵件地址分割符變量
Declare @strTemp varchar(200)?--定義多個(gè)收件人字符串臨時(shí)變量
Declare @email varchar(50)?--用分割符分割后的單個(gè)收件人字符串變量

Declare @SenderAddress varChar(50)
Declare @Attach varChar(200)

Declare @DefaultSender varChar(50)
Declare @MailServer varChar(50)
Declare @User varChar(50)
Declare @Pass varChar(50)
Declare @SenderName varChar(50)
Declare @AttachDir varChar(100)

--初始化缺省變量
Set @DefaultSender='缺省發(fā)送地址'
Set @MailServer='郵件服務(wù)器地址'
Set @User='SMTP服務(wù)器驗(yàn)證用戶(hù)地址'
Set @Pass='SMTP服務(wù)器驗(yàn)證地址'
Set @SenderName='缺省發(fā)件人名稱(chēng)'
Set @AttachDir='E:/LOG/WebData/Jmail/'+Replace(Replace(Replace(Convert(varChar(19),GetDate(),120),'-',''),' ',''),':','')+'.txt'

--將Email地址分割符統(tǒng)一為分號(hào)
set @SplitStr=';'
Set @strTemp=@strRecipients+@SplitStr+'end'
Set @strTemp=Replace(@strTemp,',',';')

--判斷是否有sql語(yǔ)句
If (@Sql is Null) Or (len(@Sql)=0)
Set @AttachDir=Null
Else
Begin
Declare @CmdStr varChar(200)
Set @CmdStr='bcp "'+@Sql+'" queryout '+@AttachDir+' -c'
EXEC master..xp_cmdshell @CmdStr
End

while CharIndex(@SplitStr,@strTemp,1)<>0
Begin
Set @email=left(@strTemp,CharIndex(@SplitStr,@strTemp,1)-1)
Set @strTemp=right(@strTemp,len(@strTemp)-len(@email)-1)
If (@Sender Is Null) Or (Len(@Sender)=0)
Set @SenderAddress=@DefaultSender
Else
Set @SenderAddress=@Sender
Print @email
--調(diào)用sp_jmail_send發(fā)送郵件
EXEC sp_jmail_send @sender=@SenderAddress,@sendername=@SenderName,
@serveraddress=@MailServer,@MailServerUserName=@User,@MailServerPassword=@Pass,
@recipient=@email,@subject=@strSubject,@mailbody=@strMessage,@attachment=@AttachDir
End
??? 此存儲(chǔ)過(guò)程只擴(kuò)展了Sql查詢(xún)結(jié)果附件發(fā)送,如果你要發(fā)送標(biāo)準(zhǔn)附件,請(qǐng)直接使用sp_jmail_send存儲(chǔ)過(guò)程或者自行擴(kuò)展功能。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶(hù)體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(chē)(EV)作為新能源汽車(chē)的重要代表,正逐漸成為全球汽車(chē)產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車(chē)的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車(chē)的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車(chē)場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周?chē)娮釉O(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉