#vb.net #record #ibm-midrange #display
#vb.net #запись #ibm-средний уровень #отображение
Вопрос:
Я пытаюсь отобразить записи из таблицы PYLEAVE, но когда я использую этот код, он показывает ошибку SQL0204, кто-нибудь может мне помочь?
Call takeconnectionas400()
conn.Close()
conn.Open()
adapter = New OleDbDataAdapter("select * from PRIMA.PYLEAVE", conn)
ds = New DataSet
adapter.Fill(ds, "PRIMA.PYLEAVE")
DGVAS400.DataSource = ds.Tables("PRIMA.PYLEAVE")
DGVAS400.ReadOnly = True
Комментарии:
1. Было ли в сообщении об ошибке что-то еще, кроме этого? Поиск предполагает, что имя таблицы неверно в запросе. (Также может быть, что вы подключаетесь к неправильной базе данных, поэтому она не найдет там таблицу.) И в коде, похоже, отсутствует строка для удаления соединения.
2. SQL0204: ФАЙЛ PYLEAVE типа PRIMA * ФАЙЛ не найден.
3. Это новый код, имя базы данных — PRIMA, имя таблицы — PYLEAVE
4. Проверьте строку подключения. Убедитесь, что вы подключаетесь к правильному серверу. Также проверьте идентификатор пользователя, который вы используете. Хотя обычно вы получаете соответствующую ошибку безопасности, если вы не авторизованы, я иногда видел ошибку 0204, когда файл есть, но вам не разрешено его видеть.
5. попробуйте ваш запрос на strsql в вашем iseries и скажите мне, сработает ли запрос
Ответ №1:
В DB2 для IBM i синтаксис таблицы отличается от, DBNAME.TABLENAME
он SCHEMA.TABLENAME
используется в старой терминологии AS / 400, то есть LIBRARY.FILE
попросите вашего администратора IBM i сообщить вам, в какой схеме (библиотеке) находится таблица, и соответствующим образом измените инструкцию SELECT.
Я не знаю VB, но в JDBC вы указываете имя базы данных в строке подключения, а не в инструкции SELECT.
Комментарии:
1. Я новичок в i Series, но должен указывать схему (библиотеку) в запросах либо с помощью System i Navigator, либо из VB. Хотя может быть параметр строки подключения или что-то вроде
USE
команды MySQL, о которой я не знаю.