postgresql 如何在flutter上连接到postgres db?

xdnvmnnf  于 2023-08-04  发布在  PostgreSQL
关注(0)|答案(1)|浏览(104)

我正在尝试连接到flutter上的一个数据库,所有连接参数都正确,下面是源代码:

import 'package:postgres/postgres.dart';

    void main() async {
      final conn = PostgreSQLConnection(
        'localhost',
        5432,
        'trackerapp',
        username: 'jax',
        password: '',
      );

      await conn.open();
      print('succes');

      // query 

      await conn.close();
      print('connection close');
    }

字符串
运行时会出现以下错误:

*E/flutter ( 7000): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: SocketException: Connection refused (OS Error: Connection refused, errno = 111), address = localhost, port = 49389
E/flutter ( 7000): #0 _NativeSocket.startConnect (dart:io-patch/socket_patch.dart:694:35)
E/flutter ( 7000): #1 _NativeSocket.connect (dart:io-patch/socket_patch.dart:960:12)
E/flutter ( 7000): #2 _RawSocket.connect (dart:io-patch/socket_patch.dart:1843:26)
E/flutter ( 7000): #3 RawSocket.connect (dart:io-patch/socket_patch.dart:21:23)
E/flutter ( 7000): #4 Socket._connect (dart:io-patch/socket_patch.dart:2068:22)
E/flutter ( 7000): #5 Socket.connect (dart:io/socket.dart:747:21)
E/flutter ( 7000): #6 PostgreSQLConnection.open (package:postgres/src/connection.dart:189:32)
E/flutter ( 7000): #7 main (package:app1/main.dart:12:14)
E/flutter ( 7000): #8 _runMain. (dart:ui/hooks.dart:131:23)
E/flutter ( 7000): #9 _delayEntrypointInvocation. (dart:isolate-patch/isolate_patch.dart:297:19)
E/flutter ( 7000): #10 _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:192:26)
E/flutter ( 7000)*:


帮助解决问题
使用的postgres:^2.6.1

7y4bm7vi

7y4bm7vi1#

我正在使用pgAdmin连接到Azure Cosmos db for Postgres

import 'package:postgres/postgres.dart';

void main() async {

  final connection = PostgreSQLConnection(

    '', // HostName
    5432, // Port
    'citus', // Maintenance DB
    username: '', // Username
    password: '', 
    useSSL: true, // Remember to add this line

  );

  await connection.open();

  final result = await connection.query('SELECT * FROM 
  public."tableName"');

  print(result);

  await connection.close();
}

字符串

相关问题