Skip to Main Content

GoldenGate

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

OGG-01483 ,-00552 ,-00782

yxes2013Jun 24 2013 — edited Jun 24 2013

Hi all.

OGG Sqlserver 2008

I tried adding trandata to my table but I got the above errors

How do I use KELCOLS to resolve it?

Is KEYCOLS a GG command or SQLserver command. Thanks

GGSCI (a-pc) 6> add trandata dbo.pictures

2013-06-24 11:56:03  WARNING OGG-01483  The key for table [ACRDB.dbo.Pictures] contains one or more variable length columns.  These columns may not have their pre-images written to the transaction log

during updates.  Please use KEYCOLS to specify a key for Oracle GoldenGate

2013-06-24 11:56:03  WARNING OGG-00552  Database operation failed: SQLExecDirect error: EXECUTE sys.sp_cdc_enable_db

if 0 = (select st.is_tracked_by_cdc from sys.tables as st where st.object_id = object_id(N'dbo.Pictures'))

   AND 0 = (select st.is_replicated from sys.tables as st where st.object_id = object_id(N'dbo.Pictures'))

BEGIN

DECLARE @capture_instance sysname = N'OracleGG_' + cast(object_id(N'dbo.Pictures') as sysname)

CREATE TABLE #ggsTabKeys (db sysname, name sysname, owner sysname, column_name sysname, key_seq int, pk_name sysname)

INSERT INTO #ggsTabKeys EXEC sp_pkeys 'Pictures', 'dbo'

IF 0 = (SELECT COUNT(*) FROM #ggsTabKeys)

BEGIN

    INSERT INTO #ggsTabKeys

    SELECT TOP (1) DB_NAME(), '', '', name, 1, '' FROM sys.columns sc

    WHERE sc.object_id = OBJECT_ID(N'dbo.Pictures')

    AND is_computed = 0

    AND max_length > 0

    ORDER BY max_length

END

IF 0 = (select COUNT(*) from #ggsTabKeys)

BEGIN

    INSERT INTO #ggsTabKeys

    SELECT TOP (1) DB_NAME(), '', '', name, 1, '' FROM sys.columns sc

    WHERE sc.object_id = OBJECT_ID(N'dbo.Pictures')

    AND is_computed = 0

    AND max_length > 0

    ORDER BY max_length

END

DECLARE @cols NVARCHAR(max)

SELECT  @cols =

REPLACE(REPLACE(REPLACE(

STUFF(( SELECT

         ',' + QUOTENAME( t.column_name)

        FROM    #ggsTabKeys AS t

        FOR XML PATH('')

       ), 1, 1, '')

       ,'&lt;','<'),'&gt;','>'),'&amp;','&')

execute sys.sp_cdc_enable_table

    @source_schema = N'dbo'

  , @source_name = N'Pictures'

  , @role_name = NULL

  , @captured_column_list = @cols

  , @capture_instance = @capture_instance

IF EXISTS(SELECT OBJECT_ID('tempdb..#ggsTabKeys'))

BEGIN

  DROP TABLE #ggsTabKeys

END

end

. ODBC error: SQLSTATE 01000 native database error 16954. [Microsoft][SQL Server Native Client 11.0][SQL Server]Executing SQL directly; no cursor.

2013-06-24 11:56:03  WARNING OGG-00782  Error in changing transaction logging for table: 'dbo.Pictures'.

ERROR: ODBC Error occurred. See event log for details..

GGSCI (a-pc) 7> ^F

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jul 22 2013
Added on Jun 24 2013
1 comment
904 views