﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Релиб / SQL Server / Базы данных  / Как в теле триггера записать зн-е тек. польз-ля в поле тек.таблицы ? / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>Релиб</description><link>http://www.relib.com/forums/</link><webMaster>robot@relib.com</webMaster><lastBuildDate>Thu, 08 Jan 2009 19:59:53 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: Как в теле триггера записать зн-е тек. польз-ля в поле тек.таблицы ?</title><link>http://www.relib.com/forums/Topic737198-22-1.aspx</link><description>Спасибо. Еще пара вопросов ?&lt;BR&gt;1)&lt;BR&gt;SELECT USER, SUSER_SNAME(), CURRENT_USER, SYSTEM_USER, SESSION_USER&lt;BR&gt;Выведет:&lt;BR&gt;dbo   sa   dbo   sa   dbo&lt;BR&gt;Что это значит ? Могут ли быть взаимозаменяемы USER и SESSION USER, SUSER_SNAME() и SYSTEM_USER. Все ли они нужны, зачем их столько ?&lt;BR&gt;&lt;BR&gt;2) Что за таблица INSERTED и откуда она доступна ?</description><pubDate>Fri, 21 Dec 2001 06:31:00 GMT</pubDate><dc:creator>AlexV0</dc:creator></item><item><title>RE: Как в теле триггера записать зн-е тек. польз-ля в поле тек.таблицы ?</title><link>http://www.relib.com/forums/Topic737198-22-1.aspx</link><description>Для вставки автора записи триггер не нужен достаточно добавить DEFAULT в свойства полей при создании таблицы&lt;BR&gt;&lt;BR&gt;CREATE TABLE Authors (&lt;BR&gt;id int PRIMARY KEY IDENTITY,&lt;BR&gt;Creator varchar(64) DEFAULT suser_sname(),&lt;BR&gt;CreateDate datetime DEFAULT getdate(),&lt;BR&gt;Editor varchar(64) NULL,&lt;BR&gt;EditDate datetime NULL,&lt;BR&gt;...&lt;BR&gt;)&lt;BR&gt;&lt;BR&gt;Для вставки редактора потребуется триггер типа&lt;BR&gt;&lt;BR&gt;CREATE TRIGGER trigger_name&lt;BR&gt;ON Authors&lt;BR&gt;FOR UPDATE &lt;BR&gt;AS &lt;BR&gt;BEGIN&lt;BR&gt;	UPDATE Authors SET &lt;BR&gt;	Editor=suser_sname(), EditDate=getdate() WHERE&lt;BR&gt;	id in (SELECT id FROM INSERTED)&lt;BR&gt;END&lt;BR&gt;GO</description><pubDate>Thu, 20 Dec 2001 10:44:00 GMT</pubDate><dc:creator>AndreP</dc:creator></item><item><title>Как в теле триггера записать зн-е тек. польз-ля в поле тек.таблицы ?</title><link>http://www.relib.com/forums/Topic737198-22-1.aspx</link><description>На таблицу Authors создаю триггер. В этой таблице есть поля:&lt;BR&gt;Creator     varchar(30)   Создатель строки таблице (user БД)&lt;BR&gt;CreateDate  datetime      Когда создал (INSERT'ом)&lt;BR&gt;Editor      varchar(30)   Кто отредактировал строку (user БД)&lt;BR&gt;EditDate    datetime      Когда отредактировал (UPDATE'ом)&lt;BR&gt;и другие поля.&lt;BR&gt;Но эти первые 4 поля должны заполняться автоматически при INSERT, UPDATE. Их пользователь нидеть не будет.&lt;BR&gt;Как это лучше сделать ? Может нужно написать 2 отдельных триггера и повешать на 1 таблицу Authors ?&lt;BR&gt;И как это на T-SQL ?&lt;BR&gt;Help, plz ...</description><pubDate>Thu, 20 Dec 2001 08:29:00 GMT</pubDate><dc:creator>AlexV0</dc:creator></item></channel></rss>