有没有使用kbmmw的,它在unicode模式的时候resolve不了,有没有遇到过滴? ( 积分: 200 )

  • 主题发起人 主题发起人 hsgrass
  • 开始时间 开始时间
H

hsgrass

Unregistered / Unconfirmed
GUEST, unregistred user!
object kbmMWGenericSQLMetaData1: TkbmMWGenericSQLMetaData
FieldNameQuote = '"'
FieldNameCase = kbmmwncUnaltered
TableNameQuote = '"'
TableNameCase = kbmmwncUnaltered
QuoteAllFieldNames = False
QuoteTableName = False
StringQuote = '"'
QuoteStringQuote = '"'
DateLayout = 'yyyy/M/d'
TimeLayout = 'AMPM hh:mm:ss'
DateTimeLayout = 'yyyy/M/d AMPM hh:mm:ss'
TrueValue = 'True'
FalseValue = 'False'
PrependTableName = False
SequenceTableName = 'KBMMW_SEQUENCES'
UnicodeOptions = [mwucStringsIsUnicode] // 如果打开这个选项,则RESOLVE一些表的时候会解释不正确,例如nvarchar的字段
Left = 136
Top = 264
end
 
解决了,要分的回一下吧,谢谢
*//------------------------------------------------------------------------------不允許從資料型別 ntext 隱含轉換到資料型別 varchar的错误
object kbmMWGenericSQLMetaData1: TkbmMWGenericSQLMetaData
UnicodeOptions = [mwucStringsIsUnicode] // 只在使用mwucStringsIsUnicode的时候才会出现错误
/*----------------------------- 生成的提交语句不正确,将nvarchar字段认为是ntext字段.
exec sp_executesql N'UPDATE test1 SET id = @P1,parentID = @P2,Caption = @P3,AutoRun = @P4,FileName = @P5 WHERE id = @P6
', N'@P1 int,@P2 int,@P3 nvarchar(6),@P4 bit,@P5 ntext,@P6 int', 2, 1, N'的确良', 0exec sp_executesql N'UPDATE test1 SET id = @P1,parentID = @P2,Caption = @P3,AutoRun = @P4,FileName = @P5 WHERE id = @P6
', N'@P1 int,@P2 int,@P3 nvarchar(6),@P4 bit,@P5 ntext,@P6 int', 2, 1, N'的确良', 0, N'', 2
, N'', 2
-----------------------------*/
Server: Msg 260, Level 16, State 1, Line 1
不允許從資料型別 ntext 隱含轉換到資料型別 varchar,資料表 '0300.dbo.test1',資料行 'FileName'。請使用 CONVERT 函數來執行查詢。
fix at kbmMWADOX.pas
function TkbmMWCustomADOXResolver.DoModifyRecord(AObject:TkbmMWCustomResolverObject):boolean;
if ((par.DataType = ftwidestring) or (par.datatype=ftstring)) and ((par.Value=null) or (par.Value='')) then
 
一直有用kbmMW,但没有遇到这种问题
可以上它的论坛搜索一下,如果不行只能自己跟踪代码了。
有很多问题都是靠自己跟踪代码才能解决的(当然前提是你买了它的代码)。
 
接受答案了.
 
后退
顶部