Örnein (Transact-SQL)
Geçerli kullanıcı adını döndürür.Bu işlev için USER_NAME() eşdeğerdir.
CURRENT_USER
Dönüş Türleri
sysname
Remarks
Örnein, geçerli güvenlik bağlamını adını döndürür.yürütmek AS çağrısı içeriğini geçirir sonra örnein gerçekleştirildiğinde, örnein Kimliğine bürünülen içerik adını döndürür.Asıl Windows, Grup üyeliği yoluyla veritabanı eriştiyseniz, Wındows asıl adının grubun adı yerine döndürdü.
Geçerli kullanıcının oturumu dönmek için , bkz: SUSER_NAME (Transact-SQL) ve SYSTEM_USER (Transact-SQL).
Örnekler
C.Geçerli kullanıcı adını döndürmek için örnein kullanma
Aşağıdaki örnek, geçerli kullanıcı adını döndürür.
SELECT CURRENT_USER;
GO
b.VARSAYıLAN kısıtlama örnein kullanma
Aşağıdaki örnek, kullanan bir tablo oluşturur. CURRENT_USER gibi bir DEFAULT kısıtlama order_person bir satış satırındaki sütun.
USE AdventureWorks;
IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'orders22')
DROP TABLE orders22
GO
SET NOCOUNT ON
CREATE TABLE orders22
(
order_id int IDENTITY(1000, 1) NOT NULL,
cust_id int NOT NULL,
order_date smalldatetime NOT NULL DEFAULT GETDATE(),
order_amt money NOT NULL,
order_person char(30) NOT NULL DEFAULT CURRENT_USER
)
GO
Aşağıdaki kod, tabloda bir kayıt ekler.Bu ifadeler yürütülürken kullanıcının adı Wanida.
INSERT orders22 (cust_id, order_amt)
VALUES (5105, 577.95)
GO
SET NOCOUNT OFF
GO
Tüm bilgileri aşağıdaki sorgu seçer orders22 Tablo.
SELECT * FROM orders22;
GO
Here is the result set.
order_id cust_id order_date order_amt order_person
----------- ----------- -------------------- ------------ ------------
1000 5105 2005-04-03 23:34:00 577.95 Wanida
(1 row(s) affected)
c.Kimliğine bürünülen bir içerikten örnein kullanma
Aşağıdaki örnekte, kullanıcı Wanida şunları çalıştırır Transact-SQL kodu.
SELECT CURRENT_USER;
GO
EXECUTE AS USER = 'Arnalfo';
GO
SELECT CURRENT_USER;
GO
REVERT;
GO
SELECT CURRENT_USER;
GO
Here is the result set.
Wanida
Arnalfo
Wanida