How to print Core Data debug values? How to print Core Data debug values? sqlite sqlite

How to print Core Data debug values?


Open "Product -> Scheme -> Edit Scheme..." in Xcode and addto "Arguments Passed on Launch":

-com.apple.CoreData.SQLDebug 3-com.apple.CoreData.Logging.stderr 1 

(The second launch argument is needed for Core Data debugging oniOS 10/macOS 10.12 or later, see com.apple.CoreData.SQLDebug not working for more information.)

The you'll see all the values that the SQL statements are bound to.Example output:

test56[1588:c07] CoreData: sql: BEGIN EXCLUSIVEtest56[1588:c07] CoreData: sql: INSERT INTO ZEVENT(Z_PK, Z_ENT, Z_OPT, ZTIMESTAMP) VALUES(?, ?, ?, ?)test56[1588:c07] CoreData: details: SQLite bind[0] = (int64)13test56[1588:c07] CoreData: details: SQLite bind[1] = (int64)1test56[1588:c07] CoreData: details: SQLite bind[2] = (int64)1test56[1588:c07] CoreData: details: SQLite bind[3] = "368650709.435904"test56[1588:c07] CoreData: sql: COMMIT


If you are using Xcode 8, you will need to also need to add additional argument

-com.apple.CoreData.Logging.stderr 1