|
Задача для срача
#158964
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
Ссылка на вложение:
|
||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
#18+
Задачка в аттаче. На мой взгляд весьма неоднозначная. ... |
||||||||||||||||
:
Нравится:
Не нравится:
|
||||||||||||||||
22.09.2022, 07:39 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
Сириус палюбому должен знать как решать. он же у нас фуллстек. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 07:39 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
В аттаче вирус! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:11 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
Задачка в аттаче. На мой взгляд весьма неоднозначная. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:14 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
На мой взгляд весьма неоднозначная. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:16 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
я бы добавил 3й вопрос на совсем засыпку: нахуя в задании первая таблица? Но вопрос конечно интересный, ибо эту таблицу логируем, а триггер на абстрактной таблице висит. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:17 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
Script Date: 31.08.2021 10:46:02 потребуй посвежее! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:18 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
я бы добавил 3й вопрос на совсем засыпку: нахуя в задании первая таблица? Но вопрос конечно интересный, ибо эту таблицу логируем, а триггер на абстрактной таблице висит. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:21 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
а может это ответ на второй вопрос? в триггере нужно поменять SomeAbstractTable на TablesForLogging! Помимо вопроса к 1 таблице у меня ещё вопрос, действительно ли данные в логируемую таблицу только вставляются и удаляются, или нас просто не интересует апдейт. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:22 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
а может это ответ на второй вопрос? в триггере нужно поменять SomeAbstractTable на TablesForLogging! Помимо вопроса к 1 таблице у меня ещё вопрос, действительно ли данные в логируемую таблицу только вставляются и удаляются, или нас просто не интересует апдейт. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:24 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
действительно ли данные в логируемую таблицу только вставляются и удаляются, или нас просто не интересует апдейт. а inserted называется одинаково и для обновления и для вставки. этот нюанс нужно учесть в процедуре восстановления - проверить, что в целевой таблице есть запись с id и если есть, обновить данными из лога, или вставить. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:28 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
inserted называется одинаково и для обновления и для вставки. этот нюанс нужно учесть в процедуре восстановления - проверить, что в целевой таблице есть запись с id и если есть, обновить данными из лога, или вставить. И если у тебя запись есть, то её надо удалить. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:32 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
inserted называется одинаково и для обновления и для вставки. этот нюанс нужно учесть в процедуре восстановления - проверить, что в целевой таблице есть запись с id и если есть, обновить данными из лога, или вставить. И если у тебя запись есть, то её надо удалить. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:34 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
В аттаче вирус! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 08:51 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
inserted называется одинаково и для обновления и для вставки. этот нюанс нужно учесть в процедуре восстановления - проверить, что в целевой таблице есть запись с id и если есть, обновить данными из лога, или вставить. И если у тебя запись есть, то её надо удалить. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 09:03 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
Есть такое хранилище логов USE [LogDB] GO /****** Object: Table [dbo].[tablesForLogging] Script Date: 31.08.2021 10:45:47 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- конфиг таблицы, что логируем CREATE TABLE [dbo].[tablesForLogging]( [BaseName] [nvarchar](50) NULL, [tableName] [nvarchar](50) NULL, [Field_Key] [nvarchar](100) NULL, [is_active] [bit] NULL, [Storage] [int] NULL ) ON [PRIMARY] GO ALTER TABLE [dbo].[tablesForLogging] ADD CONSTRAINT [DF_TablesForLogging_is_active] DEFAULT ((1)) FOR [is_active] GO USE [LogDB] GO /****** Object: Table [dbo].[tableLoggingData] Script Date: 31.08.2021 10:46:02 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- сами залогированные данные CREATE TABLE [dbo].[tableLoggingData]( [id] [bigint] IDENTITY(1,1) NOT NULL, [Base_ID] [bigint] NOT NULL, [table_ID] [bigint] NOT NULL, [DateAdd] [datetime] NOT NULL, [is_type] [bit] NOT NULL, [HostName] [varchar](100) NULL, [ProgramName] [varchar](100) NULL, [Proc_ID] [bigint] NULL, [SystemUser] [varchar](50) NULL, [Str_json] [nvarchar](max) NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO GO Use [SomeAbstractDB] go на какой-то абстрактной таблице есть триггер CREATE TRIGGER [dbo].[LogAction_tt_online_services] ON [dbo].[SomeAbstractTable] AFTER DELETE,UPDATE,INSERT AS BEGIN IF EXISTS (SELECT * FROM deleted) BEGIN INSERT INTO LogDB.dbo.TableLoggingData (Base_ID, Table_ID, [DateAdd], is_type, HostName, ProgramName, Proc_ID, SystemUser, Str_json) SELECT 23, 485330533, GETDATE(), 1, HOST_NAME(), PROGRAM_NAME(), @@PROCID, SYSTEM_USER, (SELECT D.* FOR JSON PATH) FROM deleted D END IF EXISTS (SELECT * FROM inserted) AND NOT EXISTS(SELECT * FROM deleted) BEGIN INSERT INTO LogDB.dbo.TableLoggingData (Base_ID, Table_ID, [DateAdd], is_type, HostName, ProgramName, Proc_ID, SystemUser, Str_json) SELECT 23, 485330533, GETDATE(), 0, HOST_NAME(), PROGRAM_NAME(), @@PROCID, SYSTEM_USER, (SELECT I.* FOR JSON PATH) FROM inserted I END END Задача: 1) Сделать процедуру восстановления данных, которая на вход принимает айдишник из таблицы TableLoggingData и в целевой таблице восстанавливает запись 2) Может что-то можно\нужно изменить в триггере ? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 09:12 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
Задача: 1) Сделать процедуру восстановления данных, которая на вход принимает айдишник из таблицы TableLoggingData и в целевой таблице восстанавливает запись за деньги зы: не забудь перед восстановлением отключить нахуй триггер ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 10:41 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
2) Может что-то можно\нужно изменить в триггере ? логи они как бы не для восстановления, а для анализа. для восстановления гораздо удобнее использовать другие механизмы. например бэкапы. 1) Сделать процедуру восстановления данных, которая на вход принимает айдишник из таблицы TableLoggingData и в целевой таблице восстанавливает запись ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 10:46 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
в общем без озвучивания количества тысяч рублей задача ниххуя неинтересная ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 10:46 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
Задача: 1) Сделать процедуру восстановления данных, которая на вход принимает айдишник из таблицы TableLoggingData и в целевой таблице восстанавливает запись за деньги зы: не забудь перед восстановлением отключить нахуй триггер ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 11:03 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
2) Может что-то можно\нужно изменить в триггере ? логи они как бы не для восстановления, а для анализа. для восстановления гораздо удобнее использовать другие механизмы. например бэкапы. 1) Сделать процедуру восстановления данных, которая на вход принимает айдишник из таблицы TableLoggingData и в целевой таблице восстанавливает запись ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 11:04 |
|
Задача для срача
|
|||
---|---|---|---|
#18+
2) Может что-то можно\нужно изменить в триггере ? логи они как бы не для восстановления, а для анализа. для восстановления гораздо удобнее использовать другие механизмы. например бэкапы. 1) Сделать процедуру восстановления данных, которая на вход принимает айдишник из таблицы TableLoggingData и в целевой таблице восстанавливает запись ... |
|||
:
Нравится:
Не нравится:
|
|||
22.09.2022, 11:06 |
|
|
start [/forum/topic.php?fid=32&startmsg=158964&tid=4705]: |
0ms |
get settings: |
22ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
54ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
1717ms |
get tp. blocked users: |
1ms |
others: | 19ms |
total: | 1841ms |
0 / 0 |