【问题标题】:SQL Server equivalent of Oracle USER相当于 Oracle USER 的 SQL Server
【发布时间】:2014-10-01 12:14:05
【问题描述】:

在转换 Oracle 代码块时,我发现:

IF :NEW.username != USER THEN

现在,我的问题 - Oracle 中的 USER 到底是什么?在 SQL Server 中,我有:

SELECT name FROM sys.server_principals 

这里的“名称”是否与 Oracle USER 相同?

【问题讨论】:

  • USER in oracle 是用户当前已连接

标签: sql-server oracle


【解决方案1】:

SQL Server 中,sys.database_principals 中的NAMEUSER。 dbastackexchange 这里有一个类似的问题https://dba.stackexchange.com/questions/22803/listing-the-existing-sql-server-logins-and-users

在 Oracle 中,USER 是一个帐户,您可以通过该帐户登录到数据库,并建立 Oracle 数据库允许用户访问的方式。

例如,我连接到示例模式“SCOTT”,我的连接方式如下:

conn scott/tiger@database

所以,这里的用户是“SCOTT”。让我们看看:

SQL> show user;
USER is "SCOTT"

【讨论】:

  • 谢谢。所以,在那种情况下,我认为 Oracle USER' 等同于 SQL SERVER SUSER_SNAME()。如果你们中的任何人认为我不正确,请发表评论。
  • 没有。它返回登录名,而用户名和登录名在 SQL Server 中并不相似。一个“登录”可以与多个用户相关联(每个数据库一个)。看看类似的问题stackoverflow.com/questions/1134319/…
猜你喜欢
  • 2010-12-30
  • 1970-01-01
  • 2016-03-08
  • 1970-01-01
  • 2010-11-30
  • 1970-01-01
  • 2011-01-07
  • 1970-01-01
  • 2023-02-23
相关资源
最近更新 更多