SQL Server Express触发器

SQL Server Express触发器,sql,sql-server,Sql,Sql Server,我的公司正在使用一个叫做LanSweeper的库存跟踪系统来跟踪库存。它使用SQL Server Express存储数据。软件不会记录对数据库所做的更改。。。比如说有人删除了一台笔记本电脑,他们不想让任何人注意到它的丢失。。。我对SQLite非常熟悉,能够掌握语法,但我了解到,所有SQL风格之间都有相当多的差异。是否有任何方法可以直接在数据库上创建触发器,从而允许输出到某个地方的.txt文件?触发器是一项棘手的工作,因此请花时间了解它们。它们并不像表面上看起来的那么简单(例如,当在一个交易中进行

我的公司正在使用一个叫做LanSweeper的库存跟踪系统来跟踪库存。它使用SQL Server Express存储数据。软件不会记录对数据库所做的更改。。。比如说有人删除了一台笔记本电脑,他们不想让任何人注意到它的丢失。。。我对SQLite非常熟悉,能够掌握语法,但我了解到,所有SQL风格之间都有相当多的差异。是否有任何方法可以直接在数据库上创建触发器,从而允许输出到某个地方的
.txt
文件?

触发器是一项棘手的工作,因此请花时间了解它们。它们并不像表面上看起来的那么简单(例如,当在一个交易中进行多个更新时,您必须满足需求)

您可以开始阅读手册:

使用触发器将更改写入表,而不是文本文件。这里不打算讨论太多细节,因为这是一个完整的其他讨论,但相信我,您不希望触发器写入文件

一般进近时间:

  • 创建一个审计表(它应该看起来非常像基表,但您可能需要一些额外的列,如:“WhoIsMessingWithMyData”和“whenweetheypratingaround”显然提供了审计跟踪,我将是一个设计糟糕的库存系统,允许在不通知的情况下删除设备

    网址:

    Lansweeper不仅可以检测计算机中的所有硬件设备,而且通过其更改跟踪功能,它可以发现设备何时被更改或删除。Lansweeper不仅扫描windows设备,还可以从网络发现扫描中收集网络上所有其他启用IP的设备的详细信息。(Linux、打印机、路由器等)

    可能该功能当前已禁用?
    抱歉,如果这看起来有点刺耳,只是想帮助您避免在此处重新发明轮子。

    您不想输出到文本文件。抱歉,让我重新措辞:“您可能想输出到文本文件,但不应该。改为写入另一个表”.我之所以说txt文件是因为我在寻找一个简单快捷的解决方案?我意识到写入另一个表是很理想的,如果这是sqlite,我会很乐意这样做,因为抛出一个java应用程序来查看和跟踪此表中的数据是我可以在几分钟内完成的事情。但是假设另一个表是唯一的选择,我该怎么做呢s?我真的很欣赏这个例子,我有一个非常基本的触发器,我想尝试一下…但是我如何连接sql express?它是服务器版吗?我有一个名为sql Offline的程序,它允许我查看表,但我实际上无法对表运行查询。你还没有说什么版本(年份)关于您正在使用的SQL Server,但您正在寻找一款名为SQL Server Management Studio Express的产品。事实上,我没有使用SQL Server。此数据库存储在程序的本地。它使用IIS Express托管。我没有SQL Server的任何经验…更不用说我无法学习,但在我使用sqlite的经验中,有第三个问题我可以将db文件加载到聚会应用程序中,编辑并在完成后将其放回。sql express没有类似的功能?我假设sql server management studio express是一个“插件”sql server的种类?SSMS是一个可以连接到sql server数据库的独立应用程序。它所指的更改是由软件本身进行的更改。Lansweeper执行网络发现,并跟踪软件何时找到资产,何时ip之类的更改等。我认为这将是一个非常糟糕的问题所以我给他们发了电子邮件,他们确认虽然这个功能在他们的“愿望列表”上,但它不是软件的当前功能。
    CREATE TABLE your_table_audit (
        nice         char(1)
      , things       int
      , modified_by  sysname  NOT NULL DEFAULT SUser_SName() --This depends on your authentication method
      , when_changed datetime NOT NULL DEFAULT Current_Timestamp
    );
    
    CREATE TRIGGER your_table_audit_trigger
      ON your_table
    AFTER DELETE
      AS
    BEGIN
      INSERT INTO your_table_audit (nice, things)
      SELECT nice
           , things
      FROM   deleted
    END
    ;