Book a Demo

Author Topic: SQLServer update script broken  (Read 3683 times)

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
SQLServer update script broken
« on: February 16, 2010, 01:19:01 am »
The MS SQLserver update script that can be downloaded from the website is broken.
1. It doesn't work on SQL 2000 because in that version it can't update columns of type ntext
2. There are some plain errors in the file like it tries to drop an non existing index:
Quote
           <PatchSQL>            
            IF EXISTS (SELECT 1 FROM dbo.sysindexes WHERE OBJECT_NAME(id) = 't_diagram' AND name = 'Diagram_Type')
            DROP INDEX [t_diagram].[t_diagramtypest_diagram]
            </PatchSQL>
or it tries to drop an index without checking if it exists:
Quote
<PatchSQL>
            DROP INDEX [t_object].[PD1]
        </PatchSQL>

Please make this work, it shouldn't be my job to test for such obvious errors.

Reported to Sparx

Geert

« Last Edit: February 16, 2010, 01:20:23 am by Geert.Bellekens »

hd

  • EA Administrator
  • EA User
  • *****
  • Posts: 312
  • Karma: +0/-0
    • View Profile
Re: SQLServer update script broken
« Reply #1 on: February 16, 2010, 08:26:42 am »
The update patch is only meant for SQL Server 2005 and 2008, as reflected in its name MSSQLScriptUpdatePatch_2005-8.xml.

We can add an update patch for 2000 if you wish.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: SQLServer update script broken
« Reply #2 on: February 16, 2010, 03:03:35 pm »
Henk,

Don't you think this should be indicated on the website?
The title of that part clearly indicates these are files for 2000-2008

Furthermore I also tested this update script on 2008 and it still didn't work (because of the wrong names of indexes and stuff).

Another annoyance is that the update script isn't transactional, and it isn't repeatable.
So if it fails it has executed an unknown number of actions, and there is no way to re-run the script as a whole.

Please don't come up with any more excuses as to why this isn't working. I'm just not interested, simply make it work.

Thank you

Geert