/********************************************************************** * Microsoft SQL Server SQL-DMO scripts, version 8.0. * Date created: 3/17/96. * Date modified: 7/05/00. * Copyright Microsoft Corporation, 1992-2000 ********************************************************************** * This script must be installed for the SQL-DMO (SQLDMO) objects and * the SQL Enterprise Manager to run against a Microsoft SQL Server. **********************************************************************/ /* Preprocessor directives, will be blank space in output .sql file. */ /* For fetching from cursor */ /* 8.0, the new UDF object is uning what UDDT has been using */ /* so we have to assing a new value to UDDT, this has to be consistent with the defines in dmo_itf.h */ /* status values for these. */ /* bitmask values for same; power(2, DRI_*). */ /* DRI-generated index masks, to apply to sysindexes.status */ /* sysobjects.category bit that indicates this is an MS-internal object. */ /* sysobjects.category bit for an sp_ that indicates it's a startup proc, or an xp that should ImpersonateClient. */ /* BIT_CLUSTERED indicates the key is clustered. */ /* EXCLUDE REPLICATION value in sysconstraints.status, and system-generated name. */ /* sysobjects.sysstat bits (lower 4) that mask off the object type. */ /* bit for DEFAULTS which are really DRI-created. */ /* bits for sp_MShelpcolumns col_flags - don't conflict with bit_sysgenname for DRIDefaults. */ /* sysdatabases.category bits */ /* sysobjects.category bits (from ntdbms\object.h) */ /* The parser can't '|' 0x-prefixed types as it thinks they're binary */ /**** daVinci additions ****/ /* sp_MStablekeys @flags bitmask param values. */ /* sp_MShelpindexes @flags bitmask param values. */ /* sp_MStablechecks @flags bitmask param values. */ /* Descending indices definitions, used in core_sql.cxx, key.cpp, and index.cpp */ /* Internal #defines for SQLDMO. */ /* Current SQLDMO version. Also must be available to SQLDMO.odl. */ /* #define SQLDMOVERSION_MAJOR 7 */ /* #define SQLDMOVERSION_MINOR 50 */ /* Make sure we use our own; shield SQLDMO from Starfighter changes. */ /* Our max name lengths. */ /* !! All lengths retrieved from server must be rounded UP TO THE NEXT 4-bytes. !! */ /* There must be at least one byte more than server max length, for the NULL byte. */ /* 7.0 Identifier length has been increased from 30 to 128 characters */ /* Keep for Replication, but changed to SYSNAME length */ /* 7.0 */ /* Reserve enough space for [] quoting character, and escape character in identifier */ /* Specail Identifier length for mapping table when scripting from 6.x server, this is the sysname length for 6.x server */ use master go /********************** Include individual components definitions *********************************/ /* sp_MSqv have been removed, but we want to keep this query, just in case there are left over from previous build */ if exists (select * from master.dbo.sysobjects where (OBJECTPROPERTY(id, N'IsProcedure') = 1 or OBJECTPROPERTY(id, N'IsExtendedProc') = 1) and name = N'sp_MSqv') drop procedure sp_MSqv go /********************** Verify object creation and update category bit for objects *********************************/ print '' print 'Updating category for objects created by SQLDMO70.sql.' print '' go sp_configure 'allow updates', 1 go reconfigure with override go if (@@microsoftversion < 0x09000000) begin RAISERROR(55555, 16, 1); -- 'You need a released version of SQL 9.0 to run this SQLDMO script' end go sp_configure 'allow updates', 0 go reconfigure with override go if object_id(N'sys.fn_MSFullText', N'FN') is not null exec sp_executesql N'drop function dbo.fn_MSFullText' /* dynamic SQL to make sure the syntax in valid on 70 compat level */ if (object_id('sp_MSSQLDMO90_version') is not null) begin print '' print ' Successful installation.' print '' end