FIX: Engine Does Not Handle Intl Dates in Localized Version

ID: q223318


The information in this article applies to:


SYMPTOMS

All localized versions of SQL 7.0 that do not have the US format for dates will not accept the date format of YYYY-MM-DD in which the timestamp is being sent back within the SQL statement.


CAUSE

This was caused by the Repository engine trying to update the IVersionAdminInfo::ModifiedDate property.

Additionally, this does not occur using either the "yyyy/mm/dd" or "mm/dd/yy" date formats against an SQL Server 6.5 Service Pack 1 or 2 installed.


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.

This bug was corrected in Visual Studio 6.0 Service Pack 3.

For more information about Visual Studio service packs, please see the following articles in the Microsoft Knowledge Base:

Q194022 INFO: Visual Studio 6.0 Service Packs, What, Where, Why

Q194295 HOWTO: Tell That Visual Studio 6.0 Service Packs Are Installed


MORE INFORMATION

The client software listed below has demonstrated different behaviors when working against localized versions of SQL Server 7.0

The Microsoft Repository Behavior:

  1. All user queries created against the IReposODBC interface will fail when a date format other than the mm/dd/yy format the Repository specifically tells the server to accept is used.

    Solution:

    1. Retrieve the current date format before it gets set to the mm/dd/yy format and save it.


    2. Before executing SQL statements via the IRepoODBC interface, set the date format to this original format.


    3. When finished executing the SQL statement, set it back to the saved format.


  2. The following ODBC error is returned while attempting to store a Transformation package on a German SQL Server 7.0 using the Repository:


  3. exec r_iRTblVersionAdminInfo
    @IntID=0x1C00000074726148,
    @Z_BranchID_Z=0,@Z_VS_Z=0,
    @VersionCreateTime='1998-11-18 12:31:55.0',
    @VersionModifyTime='1998-11-18 12:31:55.0',
    @CreateByUser='starlite',
    @ModifyByUser='starlite'
    Solution:

    This is fixed with Visual Studio Service Pack 3.

The Visual Component Manager Behavior:

After installing Visual Studio Service Pack 3, the following ODBC error occurs when selecting "Find" with a format of "yy/mm/dd."
"[Microsoft][ODBC SQL Server Driver][SQL Server]The select list for the INSERT statement contains fewer items than the insert list. The number of SELECT values must match the number of INSERT columns."
To search for a component in Visual Component Manager by date published, you must enter dates using four-digit years or in m/d/y format regardless of the date format setting of the SQL Server.

Steps to Reproduce Behavior:
  1. Install Visual Studio Service Pack 3 (8424) to a machine that has the Visual Component Manger installed.


  2. Launch the Visual Component Manager and open a SQL Repository.


  3. From Visual Component Manager, open the Find dialog box.


  4. From within the Look In list of the Description tab, choose the SQL Repository you opened.


  5. In the History tab, specify "99/01/01" and "99/01/01" to the Between edit boxes.


  6. Click the Find Now button.


  7. Step 6 results in the previously mentioned ODBC error.

    Solution:

    This is fixed with Visual Studio Service Pack 3.

Additional query words:


Keywords          : kbRepository kbVS600sp3fix 
Version           : WINDOWS:2.0
Platform          : WINDOWS 
Issue type        : kbbug 

Last Reviewed: June 1, 1999