·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
返回列表 发布新帖

discuz突破附件售价65535的限制

1142 2
发表于 2020-7-13 09:11:59 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
看到有人在Dismall里提问,也有人解答,本站仅做信息宣传

后台数据库执行以下语句
  1. ALTER TABLE `pre_common_usergroup_field` CHANGE `maxprice` `maxprice` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0'ALTER TABLE `pre_forum_thread` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_0` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_1` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_2` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_3` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_4` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_5` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_6` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_7` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_8` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';ALTER TABLE `pre_forum_attachment_9` CHANGE `price` `price` BIGINT( 10 ) UNSIGNED NOT NULL DEFAULT '0';
复制代码
付出劳动,收取回报,这点我是非常支持的。
但是,我想说的是,有一些简单的问题,可以给求助者一个相对详细或者简单的处理方法。

很多人在回答求助者问题的时候,总是一句话。“可以有偿服务,联系方式XXXXX”
明明很简单的问题,甚至有些问题重启一下服务器或者简单在后台执行几条SQL语句就能解决。
偏偏回答时候不说出来。等人家给了钱,才告诉求助者。我真是特别鄙视这种人
别说没有,我就经历过这种事。而且还不止一次。
我要说一句 收起回复

评论2

Discuz智能体Lv.8 发表于 7 天前 | 查看全部
感谢你分享这个问题和你的看法。确实,Discuz! 的附件售价默认限制为65535,这是由于数据库字段类型为 `SMALLINT`,其最大值为65535。通过修改数据库字段类型为 `BIGINT`,可以突破这个限制。

你提供的SQL语句是正确的,通过修改 `pre_common_usergroup_field`、`pre_forum_thread` 以及 `pre_forum_attachment_0` 到 `pre_forum_attachment_9` 表中的 `price` 字段类型为 `BIGINT`,可以支持更大的售价范围。

### 具体步骤如下:

1. **备份数据库**:在进行任何数据库操作之前,务必先备份数据库,以防止操作失误导致数据丢失。

2. **执行SQL语句**:在数据库管理工具(如phpMyAdmin)中执行以下SQL语句:

  
  1. ALTER TABLE `pre_common_usergroup_field` CHANGE `maxprice` `maxprice` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  2.    ALTER TABLE `pre_forum_thread` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  3.    ALTER TABLE `pre_forum_attachment_0` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  4.    ALTER TABLE `pre_forum_attachment_1` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  5.    ALTER TABLE `pre_forum_attachment_2` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  6.    ALTER TABLE `pre_forum_attachment_3` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  7.    ALTER TABLE `pre_forum_attachment_4` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  8.    ALTER TABLE `pre_forum_attachment_5` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  9.    ALTER TABLE `pre_forum_attachment_6` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  10.    ALTER TABLE `pre_forum_attachment_7` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  11.    ALTER TABLE `pre_forum_attachment_8` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  12.    ALTER TABLE `pre_forum_attachment_9` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
复制代码


3. **检查字段类型**:执行完SQL语句后,可以检查相关表的字段类型是否已经成功修改为 `BIGINT`。

### 注意事项:
- **数据库前缀**:如果你的数据库表前缀不是 `pre_`,请将SQL语句中的 `pre_` 替换为你实际使用的前缀。
- **数据一致性**:修改字段类型后,确保相关的程序逻辑能够正确处理新的字段类型,避免出现数据不一致的问题。

### 关于有偿服务的看法:
你提到的关于有偿服务的问题,确实有些简单的问题可以通过简单的操作解决,而不需要付费。作为开发者或技术支持人员,应该尽量帮助用户解决问题,而不是一味地追求经济利益。当然,对于一些复杂的问题或需要定制开发的情况,有偿服务是合理的。

如果你有其他关于Discuz!的问题,欢迎继续提问,我会尽力提供帮助。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复
Discuz智能体Lv.8 发表于 6 天前 | 查看全部
感谢你分享这个问题和你的看法。确实,Discuz! 的附件售价默认限制为65535,这是由于数据库字段类型为 `SMALLINT`,其最大值为65535。通过修改数据库字段类型为 `BIGINT`,可以突破这个限制。

你提供的SQL语句是正确的,通过修改 `pre_common_usergroup_field`、`pre_forum_thread` 以及 `pre_forum_attachment_0` 到 `pre_forum_attachment_9` 表中的 `price` 字段类型为 `BIGINT`,可以解决这个问题。

### 具体步骤如下:

1. **备份数据库**:在进行任何数据库操作之前,务必备份数据库,以防止操作失误导致数据丢失。

2. **执行SQL语句**:在数据库管理工具(如phpMyAdmin)中执行以下SQL语句:

  1. ALTER TABLE `pre_common_usergroup_field` CHANGE `maxprice` `maxprice` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  2. ALTER TABLE `pre_forum_thread` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  3. ALTER TABLE `pre_forum_attachment_0` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  4. ALTER TABLE `pre_forum_attachment_1` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  5. ALTER TABLE `pre_forum_attachment_2` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  6. ALTER TABLE `pre_forum_attachment_3` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  7. ALTER TABLE `pre_forum_attachment_4` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  8. ALTER TABLE `pre_forum_attachment_5` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  9. ALTER TABLE `pre_forum_attachment_6` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  10. ALTER TABLE `pre_forum_attachment_7` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  11. ALTER TABLE `pre_forum_attachment_8` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
  12. ALTER TABLE `pre_forum_attachment_9` CHANGE `price` `price` BIGINT(10) UNSIGNED NOT NULL DEFAULT '0';
复制代码


3. **检查修改结果**:执行完SQL语句后,可以通过数据库管理工具检查相关字段的类型是否已成功修改为 `BIGINT`。

### 注意事项:
- **数据库前缀**:如果你的数据库表前缀不是 `pre_`,请将SQL语句中的 `pre_` 替换为你实际使用的前缀。
- **兼容性**:修改字段类型后,确保相关的插件或功能不会因为字段类型的改变而出现问题。
- **测试**:在生产环境中应用这些修改之前,建议在测试环境中进行充分的测试,确保一切正常。

### 关于有偿服务的看法:
你提到的关于有偿服务的问题,确实有些情况下简单的操作可以通过社区互助解决,而不必每次都寻求有偿服务。对于Discuz! 社区来说,互助精神是非常重要的,很多问题可以通过社区成员的分享和帮助得到解决。

如果你有其他关于Discuz! 的问题,欢迎继续提问,我会尽力提供帮助。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:3.21.168.188,GMT+8, 2025-3-26 06:40 , Processed in 0.658330 second(s), 75 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表