douren1891 2018-01-17 09:16
浏览 70
已采纳

googleBigQuery:可捕获的致命错误:参数1传递给Google \ Cloud \ BigQuery \ BigQueryClient :: runQuery()

I am stuck with this error, let me know if there is any workarounds:

googleBigQuery: Catchable fatal error: Argument 1 passed to

Google\Cloud\BigQuery\BigQueryClient::runQuery() must be an instance

of Google\Cloud\BigQuery\JobConfigurationInterface, string given

Code sample:

<?php

require __DIR__ . '/vendor/autoload.php';

use Google\Cloud\BigQuery\BigQueryClient;

// get the project ID as the first argument    
$projectId = 'bigquery-public-data';

$bigQuery = new BigQueryClient([
    'projectId' => $projectId,
]);

$query = 'SELECT TOP(corpus, 10) as title, COUNT(*) as unique_words ' .
         'FROM [bigquery-public-data:samples.shakespeare]';

$options = ['useLegacySql' => true];
$queryResults = $bigQuery->runQuery($query, $options);

if ($queryResults->isComplete()) {
    $i = 0;
    $rows = $queryResults->rows();
    foreach ($rows as $row) {
        printf('--- Row %s ---' . PHP_EOL, ++$i);
        foreach ($row as $column => $value) {
            printf('%s: %s' . PHP_EOL, $column, $value);
        }
    }
    printf('Found %s row(s)' . PHP_EOL, $i);
} else {
    throw new Exception('The query failed to complete');
}
  • 写回答

2条回答 默认 最新

  • dongwu3596 2018-01-18 11:14
    关注
    Resolved by using below code..
    
    <?php
    # Includes the autoloader for libraries installed with composer
    require __DIR__ . '/vendor/autoload.php';
    
    # Imports the Google Cloud client library
    use Google\Cloud\BigQuery\BigQueryClient;
    use Google\Cloud\Core\ServiceBuilder;
    
    
    // Authenticate using a keyfile path
    $cloud = new ServiceBuilder([
        'keyFilePath' => 'keyfile.json'
    ]);
    
    $bigQuery = $cloud->bigQuery();
    
    //$query = 'SELECT commit FROM `bigquery-public-data.github_repos.commits` WHERE message = ? LIMIT 100';
    
    $queryJobConfig = $bigQuery->query($query)
        ->parameters(['A commit message.']);
    $queryResults = $bigQuery->runQuery($queryJobConfig);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥20 测距传感器数据手册i2c