PQ Relation не существует при запуске SQL-запроса в GoLang - PullRequest
0 голосов
/ 08 февраля 2019

При выполнении любого запроса sql к моей базе данных в GoLang, я получаю следующую ошибку, кто-нибудь знает, если есть что-нибудь еще, я могу попытаться решить проблему

pq: relation "users" does not exist

Что я пробовал:

Проверил разрешения для БД и все в порядке.
Проверен учетные данные в порядке
Запустил оператор INSERT непосредственно в базе данных SQL через psql
Создал минималистичную программу, чтобы убедиться, что она не была 't что-нибудь еще в моем коде
Ввод значений в строку запроса вручную, вместо использования параметров
Пробная инструкция SELECT и та же проблема.Он просто не находит таблицу пользователей.
Я построил строку подключения через константные переменные, как я и сделал ниже.Ни один из них не сработал.
Я пробовал с портом (5432) и без него (5432)

Ниже приведен код (минималистское приложение, которое выдает ту же ошибку, что и мое основное приложение)

func main() {
sqlInfo := fmt.Sprintf("postgres://postgres:postgres@localhost/user_details?sslmode=disable")

db, err := sql.Open("postgres", sqlInfo)
defer db.Close()

if err != nil {
    fmt.Fprintf(os.Stdout, "Connection to the database failed")
    return
}
err = db.Ping()

if err != nil {
    fmt.Fprintf(os.Stdout, "Connection to the database failed")
    return
}

fmt.Fprintf(os.Stdout, "You have connected to the database successfully")

sqlQuery := `INSERT INTO users ("user_id", "username", "password", "email", "gender", "gang") VALUES ($1, $2, $3, $4, $5, $6)`
_, err = db.Exec(sqlQuery, 1, "Ross8839", "rocky8839", "ross88399@hotmail.com", "Female", "Greengos")
if err != nil {
    fmt.Fprintf(os.Stdout, "Failed to query db")
    panic(err)
}
}

Я ожидаю, что приведенный выше код не является неправильным, так как у меня это работало в моей среде Windows, но я не хочу использовать Windows для разработки.Это все в моей среде Linux, и после перехода ... я столкнулся с этой проблемой.

Ниже приведены разрешения для пользователя postgres для базы данных

https://i.imgur.com/ZqFUrek.png

Ответы [ 2 ]

0 голосов
/ 09 февраля 2019

Ваш код, похоже, не имеет проблем и кажется работающим.Я очень сомневаюсь, что таблица users действительно присутствует в выбранной базе данных user_details.

0 голосов
/ 09 февраля 2019

Строка подключения:

postgres://postgres:postgres@localhost/user_details?sslmode=disable

говорит о том, что вы подключаетесь к базе данных user_details.Возможно, вы создали таблицу users в другой базе данных.

...