错误代码: 1048 Column 'typeId' cannot be null

本文介绍了一种常见的SQL错误——因typeId字段为空而引发的错误,并提供了具体的解决方法。通过对SQL语句进行适当修改,使用IFNULL函数来处理可能存在的NULL值,从而避免了错误的发生。

1、错误描述

1 queries executed, 0 success, 1 errors, 0 warnings

查询:CALL analyse_con('2015-01-01 00:00:00','2016-01-01 00:00:00')

错误代码: 1048
Column 'typeId' cannot be null

执行耗时   : 0 sec
传送时间   : 0 sec
总耗时      : 0.015 sec

2、错误原因

typeId字段为int(8),并且不为空,但是插入数据时有null,导致报错


3、解决办法

拼接SQL语句时,加个判断:

ifnull(typeId,0) as typeId

<template> <div> <div> <el-form ref="form" :model="form" label-width="80px"> <el-form-item label=""> 课程类型 <el-select v-model="selectedType" placeholder="请选择" clearable="" @change="returnTypeId" > <el-option v-for="type in typeList" :label="type.typeName" :value="type.id" :key="type.id" ></el-option> </el-select> 课程时间 <el-date-picker v-model="startEndTime" type="datetimerange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" > </el-date-picker> </el-form-item> <el-form-item label="课程名称"> <el-input v-model="form.courseName"></el-input> </el-form-item> <el-form-item> <el-button style="background-color: red; color: aliceblue" @click="findCourseAll()" >搜索</el-button > </el-form-item> </el-form> </div> <div> <el-table :data="tableData" style="width: 100%"> <el-table-column prop="courseName" label="课程名称" width="180"> </el-table-column> <el-table-column prop="typeName" label="类型" width="180"> </el-table-column> <el-table-column prop="startTime" label="开始时间" width="180"> </el-table-column> <el-table-column prop="endTime" label="结束时间" width="180"> </el-table-column> <el-table-column prop="pic" label="封面" width="180"> <img v-bind:src="tableData.pic" alt="" /> </el-table-column> </el-table> </div> <!-- 分页组件 --> <el-pagination background layout="prev, pager, next" :total="total" :page-size="pageSize" :current-page="pageNum" @current-change="handlePageChange" ></el-pagination> </div> </template> <script> import { findAll } from "@/api/user"; import { findCourseAll } from "@/api/user"; export default { data() { return { selectedType: "", pageNum: 1, bookingContent: "", startEndTime: "", pageSize: 7, total: 0, pic:"", form: { typeId: "", startTime: "", endTime: "", page: "", size: "", resname: "", cocahId: localStorage.getItem("userId"), }, tableData:[{ pic:"", courseId:1 }], typeList: [ { id: "", typeName: "", }, ], }; }, created() { this.getTypeAll(); this.getCourseByCoachId(); }, methods: { getCourseByCoachId() { this.form.page = this.pageNum; this.form.size = this.pageSize; this.form.resname = this.form.courseName; this.form.startTime = this.formatDate(this.startEndTime[0]); this.form.endTime = this.formatDate(this.startEndTime[1]); findCourseAll(this.form).then((resp) => { if (resp.data.code == 200) { this.tableData = resp.data.data.list; } }); }, getTypeAll() { findAll().then((resp) => { this.typeList = resp.data.data.list; }); }, returnTypeId(value) { this.form.typeId = value; }, handlePageChange(page) { this.pageNum = page; this.findCourseAll(); }, formatDate(date) { if (!date) return ""; const year = date.getFullYear(); const month = (date.getMonth() + 1).toString().padStart(2, "0"); const day = date.getDate().toString().padStart(2, "0"); const hours = date.getHours().toString().padStart(2, "0"); const minutes = date.getMinutes().toString().padStart(2, "0"); const seconds = date.getSeconds().toString().padStart(2, "0"); return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; }, }, }; </script>报错CoachCourseView.vue:116 [Vue warn]: Error in render: "TypeError: Cannot read properties of undefined (reading 'pic')"
09-05
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值