SQLSERVER出错提示:此上下文中不允许使用''。此处只允许使用常量、表达式或变量。不允许使用列名。

在执行一段SQL语句时出现了这样的一段错误提示,在网上找了不少答案,都说的不是很详细,反复修改试验,最终解决了此问题。原SQl语句为: insert into shoufei(djbh,sflb,jkdw,jsfs,sfxm,sfbz,sfsl,sfje,jkrq,czy) values(090221005103,价格调节基金,第一收费站,现金,监管费,21%,111,23.31,2009-2-21 0:10:15,王刚) 得到的出错提示为:在此上下文中不允许使用 '价格调节基金'。此处只允许使用常量、表达式或变量。不允许使用列名。解决之后的语句为: insert into shoufei(djbh,sflb,jkdw,jsfs,sfxm,sfbz,sfsl,sfje,jkrq,czy) values('090221005103','价格调节基金','第一收费站','现金','监管费','21%',111,23.31,'2009-2-21 0:10:15','王刚') 这里djbh为char型,sflb,jkdw,jsfs,sfxm,sfbz,czy为varchar型,sfsl为float型,sfje为money型,jkrq为datetime型,得到的结论为char,varchar和datetime都必须加上单引号。 补充:网上搜索的答案有关于有bit型只能使用0或1,不能使用True和False的说法。 此文主要目的是想帮助遇到和我一样问题的人。

转自:http://blog.csdn.net/gxsky/article/details/3916118

原文地址:https://www.cnblogs.com/ymy124/p/3732776.html