Oracle实体框架连接字符串

时间:2020-07-10 09:33:45

标签: asp.net database oracle asp.net-core-mvc core

我正在使用asp.net核心oracle实体框架。我正在将默认连接写入appsettings.json

但是我知道了

Oracle.ManagedDataAccess.Client.OracleException:'ORA-00942:该表 或架构不存在。

我认为我在连接字符串上弄错了,但是我不知道在哪里

我的数据库名称TEST我的模式名称DBTEST(我在其中的所有数据库表都必须连接到dbtest才能进行插入,选择或更新),但是我无法这样做,所以我无法获得表或视图不存在。

 "DefaultConnection": "Data
 Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST= ip
 )(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=test)(SERVER=TEST)));User
 Id=UserName;Password=*******;"

3 个答案:

答案 0 :(得分:1)

ORA-00942:表或架构不存在。

这意味着连接成功,但是在解析查询时出现错误。您需要检查您的查询。

答案 1 :(得分:1)

错误很明显,要么表不存在,要么您的用户(与您连接的用户)没有权限查看表。

您需要运行:

SQL> GRANT SELECT, INSERT, DELETE, UPDATE ON SCHEMA.TABLE_NAME TO USER ;

在您的情况下,将schema.table_name替换为您的模式和表,将用户替换为TEST。

答案 2 :(得分:0)

我认为我的连接字符串有误,但我找不到正确的格式

(CONNECT_DATA =(SERVICE_NAME = DATABASENAME)(SERVER = SCHEMANAME)))这部分我认为是错误的。

我必须进入数据库并在SCHEMANAME下运行,然后连接字符串才能工作,但我不知道coreect形式,也不能使用cehck oracle形式,但是如果您有任何想法,我找不到适合我的工作