ACC2000: Char/Nchar and Varchar/Nvarchar Values Displayed Incorrectly in an Access Project

ID: Q244010


The information in this article applies to:
  • Microsoft Access 2000

Moderate: Requires basic macro, coding, and interoperability skills.

This article applies only to a Microsoft Access project (.adp).


SYMPTOMS

When you view the contents of a char, nchar, varchar, or nvarchar column in an Access project that contains a value with more than 256 characters, the first 256 characters of the string are repeated, regardless of the contents of the whole column value. Characters after the 256th position are not displayed at all.


RESOLUTION


To work around this problem use the SQL Server text or ntext data type instead of char, nchar, varchar, or nvarchar.


STATUS

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


MORE INFORMATION

Steps to Reproduce Behavior

  1. In an Access project connected to SQL Server or Microsoft Data Engine (MSDE), create the following table named TestTable:

    Column Name Data Type Length Allow Nulls Identity Primary Key
    MyPk int 4 No Yes Yes
    MyChar char 1000 Yes No No
    MyText text 16 Yes No No


  2. Save the table.


  3. Open the newly created table in Datasheet view.


  4. Press ALT+F11 to start the Visual Basic Editor.


  5. Press CTRL+G to open the Immediate window.


  6. Type the following line of code in the Immediate window, and then press ENTER:
    ?string(100,"a") & string(100,"b") & string(100,"c") & string(100,"d")
    This code produces a 400-character string containing 100 a's, followed by 100 b's, followed by 100 c's, followed by 100 d's.


  7. Highlight the entire 400-character string in the Immediate window to select it, and then on the Edit menu, click Copy to copy the string to the Clipboard.


  8. Close the Visual Basic Editor.


  9. Paste the string from the Clipboard into both the MyChar and MyText columns of the TestTable table.


  10. Click in the MyText column and press SHIFT+F2. Note that the string is displayed correctly in the Zoom box.


  11. Click OK to close the Zoom box.


  12. Click in the MyChar column, and then press SHIFT+F2. Note that after 256 characters (the 56th letter "c"), the string is repeated. No letter d's are ever displayed.


Additional query words: pra

Keywords : kbdta AccessCS
Version : WINDOWS:2000
Platform : WINDOWS
Issue type : kbbug


Last Reviewed: January 17, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.