Ich habe den folgenden Python-Code [pyhdb] zur Verbindung mit SAP Hana Express: Gibt es einen Fehler in meinem Code? oder hat es etwas mit dem Benutzer SYSTEM zu tun?So stellen Sie eine Verbindung zu SAP Hana Express mit PyHDB her
Fehlermeldung ist: konnte nicht Tabellen-/View-Tabelle in Schema APP finden: Linie 1 col 19 (an Pos 18)
import os
import random
import platform
from constant import *
import pyhdb
def is_rpi():
return 'arm' in platform.uname()[4]
if is_rpi():
import Adafruit_DHT
def read_dht():
if is_rpi():
sensor = Adafruit_DHT.DHT22
humidity, temperature = Adafruit_DHT.read_retry(sensor, DHT_PIN)
if humidity is not None and temperature is not None:
print('Temp={0:0.1f}*C Humidity={1:0.1f}%'.format(temperature, humidity))
return int(humidity), int(temperature)
else:
return None, None
else:
return random.randint(20, 30), random.randint(40, 70)
if __name__ == '__main__':
connection = pyhdb.connect(host=SAP_HOST, port=39015, user=SAP_USER, password=SAP_PWD)
cursor = connection.cursor()
temp, humi = read_dht()
query = "INSERT INTO \"{}\".\"{}\" VALUES(\'{}\', {}, {}, \'{}\')".format(
SAP_SCHEMA, SAP_TABLE, DEVICE_ID, temp, humi, ROOM_NAME)
print("Executing query: "), query
cursor.execute(query)
print("New Row count: "), cursor.rowcount
connection.close()
Und hier ist der konstante Code:
DHT_PIN = 4
DEVICE_ID = '0ada9de4-bc4f-4e53-990a-cbcfccaed4c4'
ROOM_NAME = 'room 101
SAP_HOST = 'hxehost'
SAP_USER = 'SYSTEM'
SAP_PWD = 'XXXXXXXXXXXX'
SAP_SCHEMA = 'APP'
SAP_TABLE = 'TABLE'
Dies ist ein Datenbankproblem: Die Frage ist, enthält das Schema APP eine Tabelle oder eine Sicht namens TABLE, und wenn ja, ist SAP_USER berechtigt, es anzuzeigen? – snakecharmerb
Wie überprüft man, ob der Benutzer berechtigt ist, es zu sehen? – fiberhead