对于INSERT BULK 命令, 怎么建立insert触发器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对于INSERT BULK 命令, 怎么建立insert触发器相关的知识,希望对你有一定的参考价值。

程序中一段语句是
insert bulk DATA ([DATA_KJQJ] VarChar(3) COLLATE Chinese_PRC_CI_AS, [DATA_DATA] Float)
现在我想建立一个INSERT触发器,在此语句执行insert时触发,但是用
create trigger TR_data on DATA for insert 来建立,并不能触发。应该用什么语句来实现?
我提问前就试过很多次,INSERT BULK不能用create trigger TR_data on DATA for insert 来触发,你们这些回答的人到底懂不懂INSERT BULK是什么,就在这胡乱回答?

直接给出sql 代码吧,其中cno就是代表班级号

create trigger student_trigger
on student
for insert
as
if (select cno from inserted) not in (select cno from class)

begin
rollback transaction
end
参考技术A 做一个新增触发器。
create trigger tr_new
on table_name
for insert
as
begin
declare @name varchar(10)
declare @nameid int
select name into @name from inserted
select max(nameid) into @nameid from table_name where name <>@name
set @nameid = @nameid + 1
update table_name set nameid = @nameid where name = @name
end

php Laravel Bulk Insert

<?php

/**
 * Store books to database
 */
public function store(Request $request)
{
  try {
    DB::beginTrasaction();
    
    Book::insert([
      [
        'title' => 'Title Satu'
      ],
      [
        'title' => 'Title Dua dst'
      ]
    ]);
    
    DB::commit();
    return redirect()->back()->with(['success' => 'All books has been stored in database']);
  } catch (Exception $e) {
    DB::rollback();
    return redirect()->back()->with(['error' => $e->getMessage()]);
  }
}

以上是关于对于INSERT BULK 命令, 怎么建立insert触发器的主要内容,如果未能解决你的问题,请参考以下文章

SQL SERVER BULK INSERT NAME 中文汉字出现乱码怎么解决?

SQL Server批量数据导出导入Bulk Insert使用

SSIS常用的包—大量插入任务(Bulk Insert task)

Bulk Insert:将文本数据(csv和txt)导入到数据库中

bulk.insert(doc) 默认值无法插入 MongoDB nodejs

bulk.insert(doc) 默认值无法插入 MongoDB nodejs