当前位置: 首页 > 面试题库 >

为SQL查询设置默认架构

姚培
2023-03-14
问题内容

有没有一种方法可以设置查询的模式,以便在其余查询中我可以仅按表名引用表,而无需在表名前添加表名?

例如,我想做这样的事情:

Use [schemaName]
select * from [tableName]

与此相反:

select * from [schemaName].[tableName]

问题答案:

一个快速的谷歌把我指向了这个页面。它说明从sql server 2005开始,您可以使用ALTER
USER语句设置用户的默认架构。不幸的是,这意味着您将对其进行永久更改,因此,如果需要在模式之间进行切换,则每次执行存储过程或一批语句时都需要对其进行设置。

如果您使用的是sql server 2000或更早版本,则此页面说明用户和架构是等效的。如果您没有在表名前面加上schema \ user,则sqlserver将首先查看当前用户拥有的表,然后查看dbo拥有的表来解析表名。似乎对于所有其他表,您必须在schema \ user之前。



 类似资料:
  • 问题内容: 我正在运行一个非常简单的查询,但是对于某些结果,一个字段中的值为空。如果该值为null,如何将其设置为“字符串”? 就像是 它将在sql server 2005上运行 谢谢 问题答案: 使用以下内容: 或@Lieven指出: COALESCE的动态之处在于您可以定义更多的参数,因此,如果第一个为null,则获取第二个参数,如果第二个为null,则获取第三个,依此类推…

  • Apache Kafka文档说明: 内部Kafka Streams使用者max.poll.interval.ms默认值已从300000更改为integer.max_value

  • 问题内容: 我有一个像这样定义的Django Form类: 这项工作正常,但有一些限制,我似乎无法解决: (1)我想基于传递给表单的变量在queryset上使用过滤器,如下所示: 当然,这在模型中不起作用,因为不能将其作为变量传递。 因此,必须以某种方式在中定义必须,但据我所知,它是Form类中的必填字段。 (2)我想对数据库中的对象进行默认选择,可以这样选择: 我尝试将adminuser指定为表

  • 问题内容: 我创建了一个域: 我试图设置默认值: 但是得到了错误: 错误:列“ 00000”不存在 然后我设法使用设置了默认值,但是我认为它被强制转换为而不是。我尝试过, 但也没有成功。 如何获取默认值作为文本而不出现错误? 我使用了PostgreSQL。 问题答案: 在SQL中,双引号 用于引用名为“选择”的列或表 例如,SQL中的字符串常量是由单引号()界定的任意字符序列。因此,这与双引号字符

  • 我对SQL比较熟悉,对如何最好地表示以下内容的实体关系图有点困惑: 假设我们有一个公司。公司有员工。员工有经理(多名员工对1名经理)。管理者是雇员(但管理者不能管理自己)。每个员工/经理可以在多个项目上(一个EMP/经理对多个项目)。此外,员工/经理在公司中有许多角色(1个EMP/经理到许多角色)。 我最困惑的是如何将经理嵌入员工内部。我是否需要包含任何约束,以确保没有经理管理自己? 下面是我到目

  • 问题内容: 我正在使用Hibernate对数据库进行一些大查询,有时会遇到超时问题。我想避免在每个或上手动设置超时。 我可以为Hibernate配置提供任何属性,为我运行的所有查询设置可接受的默认值吗? 如果没有,如何在Hibernate查询上设置默认超时值? 问题答案: JPA 2定义了 javax.persistence.query.timeout 提示以指定默认超时(以毫秒为单位)。Hibe