You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在PSQL环境执行./insert_data.sh脚本报'.'附近语法错误求助

解决PSQL环境中执行shell脚本报错“syntax error at or near "."”的问题

错误原因

你在psql交互式命令行中输入了shell脚本执行命令./insert_data.sh,但psql仅能识别SQL语句,无法解析shell脚本的语法,因此触发该错误。

解决步骤

  • 退出psql交互式环境:输入\q并回车,回到系统shell终端(如bash/zsh)。
  • 赋予脚本执行权限(若未设置):执行命令 chmod +x insert_data.sh。
  • 在shell终端中执行脚本:直接输入 ./insert_data.sh 并回车,脚本会通过内部的psql命令连接数据库完成数据插入操作。

额外建议

  • 脚本中还有未完成的逻辑(如获取course_id、插入课程及关联表数据),需补充完整后才能实现完整的导入功能。
  • 为避免SQL注入风险,建议使用参数化查询替代直接拼接变量。例如将插入专业的语句修改为:
    INSERT_MAJOR_RESULT=$($PSQL "INSERT INTO majors(major) VALUES($1)" -v major="$MAJOR")
    
    这样可以避免单引号转义等问题,提升脚本安全性。

内容的提问来源于stack exchange,提问作者A. S.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 12:55:25