 CREATE
?
PROCEDURE
?
[
dbo
]
.
CreateMailProfile

????
@profileName
????????sysname,
 ????
@profileDescription
nvarchar
(
256
),

@accountName
@accountDescription
@mailAddress
????????
128
@mailDisplayName
@mailServer
?????????
@mailUsername
???????
@mailPassword
)

AS

BEGIN
 ????
SET
?NOCOUNT?
ON
;
 ????
TRANSACTION
;?????
DECLARE
@resultStatus
datetime
SELECT
@resultStatus
=
last_mod_datetime?
FROM
?msdb.dbo.sysmail_profile
 ????
WHERE
name
?
IF
?(
IS
NOT
NULL
)
 ????
 ????????
--
先删除配置文件的用户关联(公用)
EXECUTE
?msdb.dbo.sysmail_delete_principalprofile_sp
 ????????????
@principal_id
0
 ????????????,0);">@profile_name
;
 ????????
EXEC
?msdb.dbo.sysmail_delete_profile_sp?
;?
END
;??????????
 ????
@profileId
int
?msdb.dbo.sysmail_add_profile_sp
 ????????
,
 ????????
@description
??
@profile_id
???
?OUTPUT;
 ????
将配置文件变为公用配置
?msdb.dbo.sysmail_add_principalprofile_sp
 ????????
 ????????,0);">@is_default
1
;
?msdb.dbo.sysmail_account?
 ????
]
?msdb.dbo.sysmail_delete_account_sp?
@account_name
;?????
 ????
@accountId
?msdb.dbo.sysmail_add_account_sp
 ????????
????
?????
@email_address
@display_name
@mailserver_name
@account_id
??????
@maxAccountId
ISNULL
(
MAX
(account_id),
)?
+
?msdb.dbo.sysmail_profileaccount
 ????
?profile_id?
;
 ??????????
 ????
?msdb.dbo.sysmail_add_profileaccount_sp
 ????????
@sequence_number
@@ERROR
<>
ROLLBACK
ELSE
COMMIT
;

END
?
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|