Sqlserver笔记

sqlserver触发器

触发器这个东西这是第一次真正接触,是因为用视图实现了分片透明性之后还想要实现操作透明性。闲话不多说,先上一段代码

create trigger rtuwell_trigger_insteadof_insert
on RTU_WELL
    instead of insert
as
    declare @RTUID int,@WELLID int;
    select @RTUID=RTU_ID,@WELLID=WELL_ID from inserted;
    if(@RTUID>6)
        insert into rtuwell_2 values(@RTUID,@WELLID);
    else
        insert into rtuwell_1 values(@RTUID,@WELLID);
go

最重要的部分是asgo间的部分,首先需要定义变量,这个定义的变量就是你想要触发器操作的所有变量,我的这个表里面只有两列,一列是RTUID,一列是WELLID,这两个都是int型的。

然后因为这个是instead of insert所以需要把要操作的内容inserted黑洞中拉出来,然后再进行处理。当然如果是instead of delete那么就是deleted黑洞了。

最后附上原文链接(这里面有详细的内容):
SQL Server 触发器

使用命令行将数据库文件导入数据库

之前就想把这个记录到博客里面,但是觉得以后用的机会不多,就没记录,但是今天课题组的同志需要用我的电脑当数据库服务器,需要我导入数据库,所以又用到了,我就记录下来吧。(摘自百度知道

sqlcmd

sqlcmd -S "localhost\sqlEXPRESS"
USE [master]
GO
CREATE DATABASE [TEST] ON
( FILENAME = N'C:\Program Files\Microsoft sql Server\MSsql10.sqlEXPRESS\MSsql\DATA\TEST.mdf' ),( FILENAME = N'C:\Program Files\Microsoft sql Server\MSsql10.sqlEXPRESS\MSsql\DATA\TEST_log.ldf' )
 FOR ATTACH ;
GO

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...