SQLSERVER能获得连接的用户的IP吗?
SQL SERVER能获得连接的用户的IP吗?
主要想实现以下:
一个用户连接到数据库,把用户的用户名与IP都保存在数据库中,来实现用户登录的功能。
最好是用户调用一个存储过程,把用户名作参数,存储过程就能把用户的用户名与IP保存下来。
请指教(只有16分了)
SQL code:
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_getlinkinfo]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_getlinkinfo]
GO
/*--获取连接SQL服务器的信息
所有连接本机的:操作的数据库名,计算机名,用户名,网卡物理地址,IP地址,程序名
--邹建 2003.11--*/
/*--调用示例
--显示所有本机的连接信息
exec p_getlinkinfo
--显示所有本机的连接信息,包含ip地址
exec p_getlinkinfo @includeip=1
--显示连接指定数据库的信息
exec p_getlinkinfo '客户资料'
--*/
create proc p_getlinkinfo
@dbname sysname=null, --要查询的数据库名,默认查询所有数据库的连接信息
@includeip bit=0 --是否显示IP地址,因为查询IP地址比较费时,所以增加此控制
as
declare @dbid int
set @dbid=db_id(@dbname)
create table #tb(id int identity(1,1),dbname sysname,hostname nchar(128),loginname nchar(128),net_address nchar(12),net_ip nvarchar(15),prog_name nchar(128))
相关问答:
sqlserver,如果加个用户,权限是读所有表,但只能修改某个表的字段属性
没这个说法.
只给SELECT ,
UPDATE的只给某些表
个不会
但只能修改某个表的字段属性 这个难搞
要加权限得针对某个数据库
......
package com.tongying.www.until;
public class Resource {
// MySQl数据库的资源
/* public static final String DRIVER="com.mysql.jdbc.Driver";
public static final String URL=&qu ......
sqlserver 的规则rule如何理解, 下面是一个实例,请结合该例子解释:
为目标数据库管理系统设计业务规则:
4.2.1 规则:
Ø rule[Sex]
create rule [Sex] as @ in ('男','女')
......
需要使用SQL Server2000或2005
需要设计数据有效验证,防止录入不合法数据
需要设计存储过程或自定义函数完成数据的录入\修改\删除\统计\查询
数据库大部分表我已经建立,只是辅助性的小表建立的还不全
......