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

如何使用Laravel 9框架连接Progress 10.1B数据库?

Laravel 9 连接 Progress 10.1B 数据库实现方法

1. 准备依赖环境

  • 安装PHP的ODBC扩展:
    检查是否已安装:执行 php -m | grep odbc,若无结果则安装对应包(Ubuntu用 sudo apt install php-odbc,CentOS用 sudo yum install php-odbc)。
  • 安装Progress 10.1B兼容的ODBC驱动:
    从Progress官方获取对应10.1B版本的ODBC驱动程序,安装后配置ODBC数据源(系统DSN或用户DSN),记录好DSN名称、数据库地址、端口、用户名和密码。

2. 配置Laravel数据库连接

在 config/database.php 的 connections 数组中添加Progress数据库配置:

'progress' => [
    'driver' => 'odbc',
    'dsn' => 'ODBC:你的DSN名称',
    'host' => '数据库主机地址',
    'port' => '2030', // Progress默认端口,按需修改
    'database' => '数据库名称',
    'username' => '数据库用户名',
    'password' => '数据库密码',
    'options' => [
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
        // 若需指定字符集,添加对应配置,例如:
        // PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
    ],
],

在 .env 文件中设置环境变量(可选,便于管理):

DB_CONNECTION=progress
DB_DSN=ODBC:你的DSN名称
DB_HOST=数据库主机地址
DB_PORT=2030
DB_DATABASE=数据库名称
DB_USERNAME=数据库用户名
DB_PASSWORD=数据库密码

3. 测试数据库连接

创建测试路由验证连接是否成功,在 routes/web.php 中添加:

Route::get('/test-progress-connection', function () {
    try {
        DB::connection('progress')->getPdo();
        return 'Progress 10.1B 数据库连接成功!';
    } catch (\Exception $e) {
        return '连接失败:' . $e->getMessage();
    }
});

访问该路由地址,查看连接结果。

4. 关键注意事项

  • 确保Progress数据库服务处于运行状态,且允许当前Laravel服务器的IP访问。
  • ODBC驱动版本必须与Progress 10.1B严格兼容,避免版本不匹配导致的连接异常。
  • 若遇到字符集乱码问题,需同步配置数据库字符集与Laravel的字符集设置,可在 options 中添加对应PDO参数。

内容的提问来源于stack exchange,提问作者Luis Angel San Juan Cruz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 06:20:41