none
Access DB mit upsizing assistent auf SQL Server 2012

    Frage

  • Hallo,

    ich mit Access 2010 eine Datenbank per upsizing Assistent auf den SQL Server 2012 exportieren. Dazu will ich "Trigger" verwenden.

    Jedoch werden die Trigger nicht angelegt.

    Vermutlich liegt das Problem daran, dass der SQL Server 2012 die von Access angelegten Trigger nicht kann. (Problem bei "RAISERROR 44446 'Der Datensatz kann .....")

    Hat jemand eine Idee, wie man den SQL Server 2012 dazu bekommt, solche Trigger zu akzeptieren?

    Gruß

    Thomas

    Dienstag, 9. Oktober 2012 13:15

Antworten

  • Hallo,

    Thomas1234567 wrote:

    ich mit Access 2010 eine Datenbank per upsizing Assistent auf den SQL
    Server 2012 exportieren. Dazu will ich "Trigger" verwenden. Jedoch werden die Trigger nicht angelegt.

    Unter A2010 erstellte Data Macros werden nicht migriert, weder durch den
    Upzising-Assistenten, noch durch SSMA.
    Du musst die Trigger auf dem Server selbst anlegen.

    Vermutlich liegt das Problem daran, dass der SQL Server 2012 die von
    Access angelegten Trigger nicht kann. (Problem bei "RAISERROR 44446 'Der
    Datensatz kann .....")

    In diesem Fall ist die Syntax etwas anders und die Frage, ob RAISERROR an
    den Client weitergegeben wird, haengt vom Schweregrad (Severity) ab. Bis 10
    schweigt ODBC, ab 11 wird es dem Client mitgeteilt.

    Beispiel fuer einen Trigger:

    CREATE TRIGGER DeinTrigger ON dbo.DeineTable    AFTER INSERT, UPDATE
    AS IF <Bedingung>
      RAISERROR (N'44446 Der Datensatz kann ...',11,1);
    GO

    Zur Syntax siehe http://msdn.microsoft.com/de-de/library/ms177497%28v=sql.105%29.aspx

    Hat jemand eine Idee, wie man den SQL Server 2012 dazu bekommt, solche
    Trigger zu akzeptieren?

    s.o. Sie werden nicht migriert.

    Gruss - Peter


    Mitglied im http://www.dbdev.org
    FAQ: http://www.donkarl.com

    Mittwoch, 17. Oktober 2012 09:59
    Moderator