weixin_41494138 2025-04-29 16:12 采纳率: 14.3%
浏览 43

thinkphp5.1连接达梦数据库后如何使用model新增数据?

thinkphp5.1连接达梦数据库后如何使用model新增数据?
使用php7.3 nginx DM管理工具 V8 (Build 2024.09.18)
返回true但是数据库中没有新增数据

img

$sql = 'INSERT INTO "test"."device" ("ID","NAME") VALUES (3,\'旋\');';
$result = Db::execute($sql);
print_r($result);
这样是可以添加数据,但是用save无法成功添加数据
  • 写回答

5条回答 默认 最新

  • 阿里嘎多学长 2025-04-29 16:12
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    解决方案

    ThinkPHP 5.1 连接达梦数据库后使用 Model 新增数据,可以按照以下步骤进行:

    1. config/database.php 文件中配置达梦数据库连接信息:
    'dm' => [
        'class' => 'think\db\driver\dm',
        'host' => 'localhost',
        'port' => 5236,
        'username' => 'your_username',
        'password' => 'your_password',
        'database' => 'your_database',
    ],
    
    1. 在 Model 中继承 think\Model 类,并使用 DM 数据库驱动:
    use think\Model;
    
    class User extends Model
    {
        protected $db = 'dm';
    }
    
    1. 在 Model 中定义新增数据的方法:
    public function addData($data)
    {
        $this->data($data);
        return $this->save();
    }
    
    1. 在控制器中使用 Model 的新增数据方法:
    $user = new User();
    $data = [
        'name' => 'John',
        'email' => 'john@example.com',
    ];
    $result = $user->addData($data);
    if ($result) {
        echo '数据新增成功!';
    } else {
        echo '数据新增失败!';
    }
    
    1. nginx 服务器中检查日志,确保没有错误信息。

    如果仍然无法新增数据,请检查以下几点:

    • 是否正确配置了达梦数据库连接信息?
    • 是否正确定义了 Model 的新增数据方法?
    • 是否正确使用了 Model 的新增数据方法?
    • 是否存在其他错误信息?

    如果问题仍然无法解决,请提供更多的错误信息和代码,方便我更好地帮助您解决问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 4月29日