用pardox 做本地数据库把数据导入SQLSERVER,用ODBC 与ADOConnection 连接 输入界面用DBGridEH,从本地表把数据传到SQLSERVER 后发现 只要是中文,就是“?”号,怎么回事?各位请帮个忙

解决方案 »

  1.   

    也就是一句话,把sql中的数据转入paradox时,中文会变成乱码,但是在paradox中却可以输入中文,为什么?
      

  2.   

    paradox 中, 可設置默認語言代碼頁的, 我一般用 delphi 帶的 database desktop 修改用代碼也可
      

  3.   

    Cnn1.Execute('insert into [PRSub] select Num,Name,spec,Quantity,Unit,RDate,Memo from Prsub as a in [ODBC] [ODBC;Driver=SQL Server;UID=jiale;PWD=;Server='+ServerPath+';DataBase=Jsystem]  where a.BillNo = '''+Trim(BillNo)+''' ' ); To:aiirii(ari-爱的眼睛) 请问怎么设置?
      

  4.   

    PARADOX中是不是采用了UNICODE字段类型?
      

  5.   

    如你這樣, 你要在控制面板中設置, 讓 BDE 驅動生成的 .db 文件默認的語言代碼頁為中文選 BDE Administrator
    在Driver 設置 paradox 對應的
    LANGDRIVER 為 Paradox China 936
      

  6.   

    pardox  ---BDE administrator中设置语言驱动为dbase chs cp936
      

  7.   

    我把BDE中driver下的native,odbc中有关paradox的项目全设成了paradox china 936 都不行,
      

  8.   

    而且我曾经在查询分析器试过下面这句 insert into OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="G:\Order"
    ;User ID=admin;Password=;Extended properties=Paradox 7.x')...PRSub(num,name) 
    select num,name from PRSub  
      插入的中文也会变乱码
    而直接在代码中用  dtpr.fieldbyname('name').asstring := '中文',则不会出现乱码 
    其中 dtpr 是用TABLE与本地表关联.
      

  9.   

    呵呵,ok了,  打开 database desktop ,table--->>restructure--->>table properties选项,下拉框中选 table language 点modify按钮,选 "paradox china 936"
    然后就大功告成,给分了