| SQL Server üzerinde Logo uygulamaları için açılan kullanıcının, logo veritabanı üzerinde "db_owner" olması gerekir. Eğer bu olmazsa oluşturulan nesneler "dbo" yerine yeni açılan kullanıcının şeması altında oluşturulur. Bu durumda Logo uygulaması tarafından çağırılan nesne(tablo, index, view vs.) "dbo" şemasında arandığı için yok sayılabilir. (Invalid object name) |
| Böyle bir durum oluşması halinde aşağıdaki SQL komutları ile şema yeniden "dbo" yapılabilir. Komutlar çalıştırılmadan önce yedek alınmalı, ilgili veritabanı seçilmelidir. |
| SQL 2005, 2008 veya 2008 R2 ise : |
| sp_Msforeachtable @command1="ALTER SCHEMA dbo TRANSFER ?" |
| SQL 2000 ise : |
|
DECLARE @NEW_OWNER SYSNAME SET @NEW_OWNER = 'dbo' declare @OLD_OWNER SYSNAME DECLARE @LOGO_OBJ SYSNAME DECLARE @OBJ_OWNER INT DECLARE LOGO_OBJS CURSOR FOR SELECT NAME, uid FROM SYSOBJECTS WHERE NAME LIKE 'L%' AND XTYPE = 'P' OR XTYPE='U' OR XTYPE='V' ORDER BY NAME OPEN LOGO_OBJS FETCH NEXT FROM LOGO_OBJS INTO @LOGO_OBJ ,@OBJ_OWNER WHILE @@FETCH_STATUS = 0 BEGIN SET @OLD_OWNER = (SELECT NAME FROM SYSUSERS WHERE uid = @OBJ_OWNER ) execute (' sp_changeobjectowner ''' + @OLD_OWNER + '.' + @LOGO_OBJ + ''',''' + @NEW_OWNER + '''') FETCH NEXT FROM LOGO_OBJS INTO @LOGO_OBJ ,@OBJ_OWNER END CLOSE LOGO_OBJS DEALLOCATE LOGO_OBJS |
| < Prev | Next > |
|---|



