我正在更新MS-SQL表结构以使用nvarchar(max)而不是text数据类型。
以前,对于使用text数据类型的ColdFusion查询,我使用了cfsqltype="CF_SQL_LONGVARCHAR"
:
<cfquery name="local.qryUpdateByPK" datasource="#local.dsn#">
UPDATE
[JobPosting]
SET
[JobDescription] = <cfqueryparam value="#arguments.JobDescription#" cfsqltype="CF_SQL_LONGVARCHAR" null="#YesNoFormat(NOT Len(Trim(arguments.JobDescription)))#">
WHERE
[JobPostingID] = <cfqueryparam value="#arguments.JobPostingID#" cfsqltype="CF_SQL_INTEGER">
</cfquery>
我想知道在使用nvarchar(max)或varchar(max)时应该为cfsqltype属性使用什么。
答案 0 :(得分:2)
如果内存服务,有关nvarchar
支持的信息在Adobe主文档last I checked中有点粗略。但是,nvarchar(max)
的正确sqltype是CF_SQL_LONGNVARCHAR
。
<强>更新强>
Database Enhancements for CF10
中提到了简要的新类型对CFSQLType的新数据类型支持
cfqueryparam和cfprocparam标记支持以下SQL类型:
- CF_SQL_NCHAR
- CF_SQL_NVARCHAR
- CF_SQL_LONGNVARCHAR
- CF_SQL_NCLOB
- CF_SQL_SQLXML