我正在使用SQL查询从SQL数据库中提取一些学生记录。我收到错误Arithmetic overflow error converting expression to data type datetime.
看起来有一个学生编号的列是char(15)类型,并且每当我在学生编号前放一个字母时都会抛出此错误(我们有这个案例的学生)。
这很好用
Select * from StudentDataTable where StudentNumber = '123456789'
这会引发错误
Select * from StudentDataTable where StudentNumber = 'A12345678'
任何帮助都将不胜感激。
答案 0 :(得分:0)
SQL正在将学生编号转换为后台的整数,因此您的第一个示例有效,但您的第二个示例不会。检查数据类型的学生编号是什么,它应该是数字类型,INT,BIGINT等。
此外,您应该在没有学号的引号的情况下查询,保存SQL转换
Select * from StudentDataTable where StudentNumber = 123456789