34,576
社区成员
发帖
与我相关
我的任务
分享
CREATE PROCEDURE Cdisk_Login(@C_useId VARCHAR(16),@C_Psd VARCHAR(16),@C_Ip VARCHAR(15))
AS
BEGIN
PRINT @C_useId
PRINT @C_Psd
PRINT @C_Ip
RETURN 0
DECLARE @UID VARCHAR(16)
DECLARE @PSD VARCHAR(16)
SET @UID=(SELECT useId FROM dbo.Cdisk_Users WHERE useId=@C_useId)
SET @PSD=(SELECT Psd FROM dbo.Cdisk_Users WHERE useId=@C_useId)
IF @UID=@C_useId AND @PSD=@C_Psd
BEGIN
INSERT INTO dbo.Cdisk_Users_Log
( useId, lIp, lTime )
VALUES ( @C_useId, -- useId - varchar(16)
@C_Ip, -- lIp - varchar(15)
GETDATE() -- lTime - datetime
)
RETURN 1
END
END
DECLARE @RC int
DECLARE @C_useId varchar(16)
DECLARE @C_Psd varchar(16)
DECLARE @C_Ip varchar(15)
SELECT @C_useId = 'admin'
SELECT @C_Psd = 'admin'
SELECT @C_Ip = '127.0.0.1'
EXEC @RC = [pubs].[dbo].[Cdisk_Login] @C_useId, @C_Psd, @C_Ip
DECLARE @PrnLine nvarchar(4000)
PRINT '存储过程: pubs.dbo.Cdisk_Login'
SELECT @PrnLine = ' 返回代码 = ' + CONVERT(nvarchar, @RC)
PRINT @PrnLine
declare @ip varchar(15),@sql varchar(1000)
--得到ip地址
create table #ip(a varchar(200))
set @sql='ping '+host_name()+' -a -n 1 -l 1'
insert into #ip exec master..xp_cmdshell @sql
select @ip=left(a,patindex('%:%',a)-1) from(
select a=substring(a,patindex('Ping statistics for %:%',a)+20,20)
from #ip where a like 'Ping statistics for %:%') a
--显示结果
select 用户计算机名=host_name(),ip地址=@ip
drop table #ip