mysql - 运行 SQL 选择查询后,在表中添加新列
问题描述
我在我的 phpMyAdmin 界面中运行了以下 SQL 查询,将 3 列合并到一个新列media_location
中,如下所示。运行查询后,我看到的结果完全符合预期,但是当我回到我的表时,我看不到新列。
SELECT CONCAT(`rel_path`,`filename`,'.', `file_extension`) as media_location
FROM `ulv8_jreviews_media`
解决方案
语句从SELECT
数据库中获取数据。它不会更改基础表结构。您正在做的是连接 SELECT 查询输出中的值。这些更改不会保留在数据库中。
要更改表结构,您需要执行ALTER TABLE
语句,然后用一些数据填充新列。
ALTER TABLE ulv8_jreviews_media
ADD media_location varchar(255);
UPDATE ulv8_jreviews_media SET media_location = CONCAT(`rel_path`,`filename`,'.', `file_extension`);
推荐阅读
- python - Matplotlib 条形图的默认颜色显示
- asp.net-core - .NET Core 类型不匹配的 Web API 中的模型绑定
- amazon-web-services - 我可以为 AWS CLI 禁用 ssl
- excel - Windows 10 上的 VBA Shell 调用权限被拒绝
- git - git:如何将当前更改的工作区升级到 github 中的新版本(标签)
- .net - 即使使用 HTML.HiddenFor,列表也是空的
- jira - 在反向代理中通过 rest 查询给出 403 未授权
- python - 如何通过考虑其他数据帧的条件在 python 中生成新的数据帧?
- c++ - 如何在宏中正确转发结构化绑定参数
- c# - 通过 C# mvc 迭代一个对象并使用 group 创建一个新对象