标准表达式中数据类型不匹配怎么办

2025-04-05 21:56:15
推荐回答(3个)
回答1:

Access中要求参数必须一一对应。

string selcom1 = "SELECT * FROM GuestBook WHERE PostID = " + postID;

string selcom2 = "SELECT * FROM GuestBook WHERE ParentID = " + postID;

PostID和ParentID为整型,所以不需要加单引号。不过大多数数据库系统中确实对于加单引号也不报错。

另外用参数的方式来做更安全。

扩展资料:

注意事项

在Access中,是无法使用存储过程的,但可以使用文本命令,如
update news set title=@title,types=@types,context=@context where id=@id 

ID字段类型为自动增加,这句语句放在sql里是不会有问题的,但在access却有一个明显的错误:标准表达式中数据类型不匹配,同时也不会更新该条记录。 

而造成的这个问题的原因就在于id的字段类型,在Access中 "where id=@id", 如果id类型为数字,那么就不能存在单引号''(在sql这里''是指定一个字段的值用,如'aaa'),而上面的文本命令的最后执行结果是:

update news set title='标题',types='类型' ,context='内容' where id='1' 

不知道这种错误算什么错误,而正确的语句应该是:

update news set title='标题',types='类型' ,context='内容' where id=1 

偏偏 DELETE 语句又不会出现上面所说的错误,如:

delete from news where id=@id

回答2:

1、首先使用typeof判断的方法代码。

2、使用instanceof 来判断 的方法代码。

3、实现Array.isArray() 全局执行环境中创建的方法代码。

4、实现Array.isArray 优于 instanceof,因为Array.isArray能检测iframes的方法代码。

5、如果不存在 Array.isArray()--》则在其他代码之前运行下面的代码将创建该方法代码。

回答3:

在windows控制面板中,打开“区域与语言选项”,确认选择是语言是“中文”,自定义中看看短日期格式是否“yyyy-MM-dd”,时间格式是否“hh:mm:ss”