使用PD导出sql脚本。
没有设置PD时导出的sql脚本为:
create table dbo.t_call_note ( id int identity(100,1), caller varchar(32) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null, called varchar(32) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null, ring_time char(19) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null, talk_time char(19) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS null, end_time char(19) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS null, user_no varchar(50) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null, user_name varchar(50) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null, talk_long varchar(50) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS null, call_Id varchar(50) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null, user_pk int collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null, create_time char(19) collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null, constraint PK_T_CALL_INFO primary key (id) on "PRIMARY" ) on "PRIMARY" go
上面的sql包含collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null,这是一种排序方式。
但是在执行sql时就会出现错误.如果column为int时就会报错。那么我们如果如下设置,问题不再是问题了!哈哈
1.点击:工具栏-》database-》edit current DBMS
2.选择数据源(以SqlServer2005为例)
Microsoft SQLServer2005\Script\Objects\Column\Add
右边的Values值为:
%20:COLUMN% [%COMPUTE%?AS (%COMPUTE%):[%.L:DATATYPE%=xml?xml[%XMLSchemaCollection%?([%ContentType% ]%XMLSchemaCollection.GeneratedName%): ]:%20:DATATYPE%][.Z:[ collate %ExtCollation%][%ExtRowGuidCol%? RowGuidCol][%IDENTITY%? %IDENTITY%[[(%ExtIdentitySeedInc%)][%ExtIdtNotForReplication%? not for replication]]:[%ExtNullConstName%? constraint %ExtNullConstName%][ %NULL%][ %NOTNULL%]][[%ExtDeftConstName%? constraint %ExtDeftConstName%] default %DEFAULT%]] [%CONSTDEFN%]]
修改为:
%20:COLUMN% [%COMPUTE%?AS (%COMPUTE%):[%.L:DATATYPE%=xml?xml[%XMLSchemaCollection%?([%ContentType% ]%XMLSchemaCollection.GeneratedName%): ]:%20:DATATYPE%][%ExtRowGuidCol%? RowGuidCol][%IDENTITY%? %IDENTITY%[[(%ExtIdentitySeedInc%)][%ExtIdtNotForReplication%? not for replication]]:[%ExtNullConstName%? constraint %ExtNullConstName%][ %NULL%][ %NOTNULL%]][[%ExtDeftConstName%? constraint %ExtDeftConstName%] default %DEFAULT%] [%CONSTDEFN%]]
修改的内容就是去掉:[.Z:[ collate %ExtCollation%]以及最后一个"]"
再次导出sql脚本就不会出现collate Chinese_PRC_Stroke_90_CS_AS_KS_WS not null.
如下:
create table dbo.t_call_note ( id int identity(100,1), caller varchar(32) not null, called varchar(32) not null, ring_time char(19) not null, talk_time char(19) null, end_time char(19) null, user_no varchar(50) not null, user_name varchar(50) not null, talk_long varchar(50) null, call_Id varchar(50) not null, user_pk int not null, create_time char(19) not null, constraint PK_T_CALL_INFO primary key (id) on "PRIMARY" ) on "PRIMARY" go
希望能有更好的办法。这只是小弟不才自己找到的解决办法。希望对大家有所帮助