AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-73644

Midhun C N's questions

Martin Hope
Midhun C N
Asked: 2018-01-19 00:08:39 +0800 CST

openrowset 使用包含单引号的密码连接到 SQL 服务器

  • 1

如果有一种方法可以使用 openrowset 查询 Azure SQL 数据库,有人可以帮助我,并且 SQL 身份验证帐户的密码字符串中包含“单引号”。我的陈述如下所示

(我从本地查询 Azure 数据库)

SELECT a.*  
FROM OPENROWSET('SQLNCLI11', 'SERVER=sqlserver.database.windows.net,1433;DATABASE=testDB;Uid=admin;Pwd=Fj'C(D=JJ&'XE6vx};','select * from table1 with (nolock)')a

我尝试了以下解决方案

解决方案 1 - 动态 SQL

declare @string varchar(max)
set @string=
'SELECT a.*  
FROM OPENROWSET(''SQLNCLI11'', ''SERVER=sqlserver.database.windows.net,1433;DATABASE=testDB;Uid=admin;Pwd="Fj'''+'C(D=JJ&'''+'XE6vx}";'',''select count(*) from dbo.table1 with (nolock)'')a'

exec (@string)

解决方案 2 - 将密码作为参数传入

declare @string varchar(max)
declare @pwd varchar(max)
set @pwd = 'Fj'''+'C(D=JJ&'''+'XE6vx}'
set @string=
'SELECT a.*  
FROM OPENROWSET(''SQLNCLI11'', ''SERVER=sqlserver.database.windows.net,1433;DATABASE=testDB;Uid=admin;Pwd='+@pwd+';'',''select count(*) from dbo.table1 with (nolock)'')a'

exec (@string)

它们都导致相同的错误(指向密码)

消息 102,级别 15,状态 1,第 16 行“C”附近的语法不正确。

使用密码中没有任何“单引号”的 SQL 身份验证帐户绝对可以正常工作。

我可以轻松更改密码来解决此问题,但仍然想知道是否有解决此问题的方法。

sql-server azure-sql-database
  • 1 个回答
  • 2074 Views
Martin Hope
Midhun C N
Asked: 2017-06-13 23:54:20 +0800 CST

SQL Server 如何生成查询计划并将“自动创建统计信息”设置为“关闭”

  • 6

我想知道 SQL Server 如何生成一个将“自动创建统计信息”设置为“关闭”的查询计划。

我在搜索答案时偶然发现了以下链接中的以下上下文(抱歉,我进行了搜索,但找不到更好的内容)。

https://www.simple-talk.com/sql/performance/execution-plan-basics/

表变量永远不会生成统计信息,因此优化器总是假定它们只有一行,而不管它们的实际大小

尽管以上仅适用于表变量,但我认为 SQL Server 将使用相同的原理来导出表的查询计划,因此决定做一个小测试。

我清除了 PROC 缓存并在包含 100 万条记录的表上运行以下查询

在此处输入图像描述

在此处输入图像描述

我的测试证明我错了,SQL 服务器报告缺少统计信息(如预期的那样),但是当没有统计信息时,估计的行数为 31622(我预计它是 1)。查询优化器是如何在没有统计数据的情况下得出这个值的?

sql-server execution-plan
  • 1 个回答
  • 375 Views
Martin Hope
Midhun C N
Asked: 2016-08-13 02:33:07 +0800 CST

SQL Server 不列出具有 NULL 值的记录

  • 1

我今天遇到了一个奇怪的现象。我运行以下查询以查找除 BROKER_RECEIVE_WAITFOR 以外的所有等待请求

select * from sys.dm_exec_requests where session_id > 55 
and wait_type not like ('BROKER_RECEIVE_WAITFOR') 

查询运行良好,但它未能列出任何没有等待的请求,即 wait_type 为NULL(此时有相当多的运行查询没有任何等待)。

为什么会这样,难道它不应该列出所有 wait_type 的记录,而不是像 'BROKER_RECEIVE_WAITFOR' 包括 Nulls?

我正在运行 SQL Server 2008R2 SP3。

sql-server sql-server-2008-r2
  • 4 个回答
  • 200 Views
Martin Hope
Midhun C N
Asked: 2016-07-25 14:02:10 +0800 CST

SQL Server 中群集服务帐户的权限

  • 1

最近我遇到了一个问题,即托管在 2 节点故障转移群集中的 SQL Server 2012 无法启动。由于集群和 Windows 事件日志没有太大帮助,我开始检查 SQL Server 错误日志,每次我尝试在故障转移集群管理器中启动 SQL Server 角色时,都会出现以下错误

用户“NT AUTHORITY\SYSTEM”登录失败。原因:找不到与提供的名称匹配的登录名。[客户: ]

所以我继续创建登录 NT AUTHORITY\SYSTEM 并将其添加到 Sysadmin 角色。它奏效了!

现在我怀疑我所做的是否正确或不安全。

  1. 我听说在 SQL Server 中创建 NT AUTHORITY\SYSTEM 是不安全的,如果是这种情况,我应该将集群服务更改为域帐户吗?这会影响什么吗?
  2. 我将 NT AUTHORITY\SYSTEM 添加到 Sysadmin 角色 - 这真的是必需的还是我可以只为登录显式提供所需的权限
sql-server sql-server-2012
  • 2 个回答
  • 5902 Views
Martin Hope
Midhun C N
Asked: 2016-06-30 23:19:30 +0800 CST

DBCC IND 不工作

  • 3

我正在尝试使用以下查询获取 SQL2008 R2 DEV 框中 table1 上的聚集索引使用的页面。

dbcc traceon(3604, -1) 
go 
dbcc ind (0, 'dbo.table1', 1) 
go

但它仍然显示以下输出并且不显示结果。我在这里做错了什么?

在此处输入图像描述

此外,以下消息也会记录在 SQL Server 日志中

消息 DBCC TRACEON 3604,服务器进程 ID (SPID) 59。这只是一条信息性消息;无需用户操作。

sql-server sql-server-2008-r2
  • 1 个回答
  • 833 Views
Martin Hope
Midhun C N
Asked: 2015-11-23 10:20:56 +0800 CST

SQL Server 虚拟帐户和文件夹权限

  • 0

将服务帐户更改为域帐户甚至本地帐户后,SQL server 2012 仍然如何工作。例如:如 MSDN 中所述

https://msdn.microsoft.com/en-us/library/ms143504.aspx#VA_Desc

此文件夹Instid\MSSQL\data对虚拟帐户具有完全控制权限NT service\MSSQLSERVER。但是我很困惑在将服务帐户更改为域或本地帐户后 SQL 服务器仍然如何启动,因为除非我们明确提供,否则这个新的服务帐户将没有对该特定文件夹的权限。根据我的测试,如果您NT service\MSSQLSERVER从Instid\MSSQL\data文件夹的权限中删除,SQL Server 将无法启动。

那么这是否意味着任何作为 SQL Server 服务帐户的帐户都会自动添加到NT service\MSSQLSERVER组中?, 这是如何运作的?

sql-server windows-server
  • 1 个回答
  • 2148 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve