13.07.2015 Views

Caché Upgrade Checklists - InterSystems Documentation

Caché Upgrade Checklists - InterSystems Documentation

Caché Upgrade Checklists - InterSystems Documentation

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Caché</strong> 2010.2 <strong>Upgrade</strong> ChecklistClass SQLUser.FunctionTest Extends %Persistent{Property myString As %String(COLLATION = "SQLSTRING(100)", MAXLEN = 500);ClassMethod Reverse(Arg1 As %String) As %String(COLLATION="SQLSTRING(100)", MAXLEN=500) [SqlName=Reverse, SqlProc ]{quit $REVERSE(Arg1)}}and it uses the querySELECT myString, SQLUser.Reverse(myString) gnirtSymFROM SQLUser.FunctionTestORDER BY 1, 2Prior to this change, the execution of the query would result in a error when the length of the data inmyString approached 500 characters. This is due to a known subscript length restriction in <strong>Caché</strong>. Beginning with thisversion, the SQL query processor will recognize the collation of the return value for the function as SQLSTRING(100)and the ORDER BY will be performed on the collated value of the function return value.4.2.6.7 Change In Concatenation OperatorThere has been a slight change in behavior of the SQL concatenation operator. Prior to this change, if you had “A || B” inan SQL statement, the resulting value would be a string with exact collation. Now, if A and B are both strings and bothhave the same collation, the result will be of that common collation also. This may cause a change in the results returnedfor some queries.4.2.6.8 New Default DDL Datatype Mappings For Large-Object SQL DatatypesFor new installations, the default DDL Datatype mappings for all large objects have been changed:• Character large objects (CLOBs) have been changed from “CStream%String” to %Stream.GlobalCharacter.• Binary large objects (BLOBs) have been changed from “BStream%String” to %Stream.GlobalBinary.Customers with multiple setups that have some new installs and some upgraded systems need to be aware that the newlyinstalled systems may produce different class definitions when executing DDL CREATE TABLE and ALTER TABLEstatements to create stream fields. BStream%String and CStream%String and their synonyms (%Library.GlobalBinaryStreamand %Library.GlobalCharacterStream) are still fully supported.4.2.6.9 Error Returned Instead Of Silent FailureNow, error messages will be reported for conversions that used to fail without any message. This change returns SQL_ERRORon a row containing conversion errors that are not due to truncation, to match the behavior of SQLServer reporting. TheSQL state reported may not be the same as seen with SQLServer when a clearer message is available in <strong>Caché</strong>.4.2.6.10 More Info Now Returned By Error HandlersCalls to SQLError and the other error handling APIs will return more complete information than in prior releases. TheseAPIs now have the ability to report multiple errors, so that error reporting can now indicate status on more than a singlerecord. This allows <strong>Caché</strong> to report truncation errors (among other errors) for a particular row and column of a result setthrough the application calling SQLGetDiagRec and SQLGetFieldRec ODBC 3.5 APIs.4.2.6.11 Changes To User-Defined DATE And TIMESTAMP HandlingPrior to this release:86 <strong>Caché</strong> <strong>Upgrade</strong> <strong>Checklists</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!