我有一个Object
表,它是从另一个数据库的集成服务(如果需要,我可以更改)填充的。在某些时候,我们需要在另一个表中手动添加帖子,ObjectObjectGroup (ObjectId, ObjectGroupId)
如果Object.ObjectType
有某个整数值,则需要该表。由于集成服务不处理这种更新,我正在考虑向 Object 表添加一个触发器,其伪代码如下:
if Object.ObjectType = 10
begin
if Object.ObjectNumber like '<string pattern>'
begin
insert into ObjectObjectGroup values...
end
end
Run Code Online (Sandbox Code Playgroud)
这种设置是明智的,还是在性能方面有更好的方法?
我有一个MessageQueue
六列的原始表格。当我尝试对该表执行 SELECT INTO 时,<network domain\user name>.MessageQueue
当我使用以下代码时,它会创建一个仅包含三列的新(本地)表。我究竟做错了什么?
declare
@TempTable table (idx smallint Primary Key IDENTITY(1,1), OneId int, OtherId int)
declare
@OneId int,
@OtherId int,
@date datetime = dbo.GetFloorDate(getdate()),
@i int = 1
insert @TempTable select Id, OtherId from One where @date = (select dbo.GetSomeDate (Id))
select MessageId = 9999, OneId, OtherId into MessageQueue from @TempTable
select * from MessageQueue
Run Code Online (Sandbox Code Playgroud) 我对 T-SQL 命令 MOVE 有点困惑。我有一个声明说:
MOVE
N'Prod_Database_Data'
TO
N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test_Database.mdf'
GO
Run Code Online (Sandbox Code Playgroud)
日志上使用了相同的语句:Prod_Database_Log。我认为该语句只是制作了数据库的副本,而不是实际移动原始数据库。我是对的还是我错过了一些根本上至关重要的东西?