# SQL生成说明 ## 问题说明 如果生成的SQL文件中出现中文乱码,是因为文件编码问题导致的。 ## 解决方案 ### 方法一:使用PowerShell脚本(推荐) 1. **运行脚本** ```powershell cd E:\ry_study\Study-Vue-redis powershell -ExecutionPolicy Bypass -File generate_sql_fixed.ps1 ``` 2. **检查生成的文件** - 打开 `courseware_import_generated.sql` - 确保中文字符显示正常 ### 方法二:手动编写SQL(参考示例) 参考 `courseware_import_example.sql` 文件中的格式: ```sql INSERT INTO `courseware` ( `title`, `type`, `file_path`, `file_size`, `file_name`, `subject_id`, `grade`, `course_id`, `class_id`, `upload_user_id`, `description`, `duration`, `create_by`, `create_time`, `update_by`, `update_time`, `remark` ) VALUES ('课件标题', 'video', '/profile/upload/2025/11/18/文件名.mp4', 文件大小, '文件名.mp4', NULL, NULL, NULL, NULL, 1, NULL, NULL, 'admin', NOW(), '', NULL, NULL); ``` ### 方法三:使用数据库工具导入 如果SQL文件仍有乱码,可以: 1. **使用Navicat、phpMyAdmin等工具** - 打开工具 - 选择数据库 - 导入SQL文件时,选择正确的字符集(UTF-8) 2. **使用MySQL命令行** ```bash mysql -u用户名 -p密码 数据库名 --default-character-set=utf8 < courseware_import_generated.sql ``` ## 字段说明 | 字段名 | 说明 | 示例值 | |--------|------|--------| | `title` | 课件标题 | '01 第1课·春天的到来' | | `type` | 文件类型 | 'video' / 'document' / 'image' | | `file_path` | 文件路径 | '/profile/upload/2025/11/18/文件名.mp4' | | `file_size` | 文件大小(字节) | 52428800 | | `file_name` | 原始文件名 | '01 第1课·春天的到来.mp4' | | `subject_id` | 学科ID | NULL 或 2 | | `upload_user_id` | 上传人ID | 1(管理员) | ## 注意事项 1. **文件编码**:SQL文件必须使用UTF-8编码保存 2. **特殊字符**:如果文件名包含单引号,需要转义为两个单引号('') 3. **文件大小**:`file_size`字段需要根据实际文件大小填写(单位:字节) 4. **文件路径**:路径格式为 `/profile/upload/2025/11/18/文件名`(注意只有一个upload) ## 文件类型判断 - **视频**:.mp4, .avi, .mov, .wmv, .flv, .mkv, .webm, .m4v, .3gp, .ts - **文档**:.doc, .docx, .xls, .xlsx, .ppt, .pptx, .txt, .pdf - **图片**:.jpg, .jpeg, .png, .gif, .bmp, .webp ## 执行SQL后 执行SQL后,可以在课件管理界面看到这些文件。如果文件无法访问,请检查: 1. 文件是否真的存在于服务器上 2. 文件路径是否正确 3. Web服务器配置是否正确