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-1074

Lumpy's questions

Martin Hope
Lumpy
Asked: 2017-12-14 06:04:27 +0800 CST

使用 powershell Invoke-SQLCmd 的困难

  • 2

我已经设置了一个简单的 sqlcmd 脚本。内容如下。

  use $(dbname);
  select * from $(tablename)

然后我运行以下 Invoke SQLCMD

$SQLCMDVarArr = "dbname='MyDatabase'", "Tablename='MyTable'"

INVOKE-SQLCMD -ServerInstance MyServer\MyInstance -inputFile '\\MyShare\Database\Sprints\csrtemp2\csrtest.sql' -variable $SQLCMDVarArr

我得到了错误:

  INVOKE-SQLCMD : Incorrect syntax near 'MyDatabase'.

我直接从 invoke-sqlcmd get-help 示例中提取了语法。谁能告诉我这有什么问题?

谢谢,

根据要求,这是在 Windows Server 2008 R2 上运行的

powershell sqlcmd
  • 1 个回答
  • 4948 Views
Martin Hope
Lumpy
Asked: 2016-04-12 04:38:48 +0800 CST

获取快照数据文件列表

  • 3

我需要以编程方式删除一个数据库及其所有快照,然后重新创建数据库并创建一个新快照。我无法从查询中找到快照文件所在的位置。

本质上,我们有多个环境,它们在放置这些文件的位置上并不一致,因此我需要我的代码足够智能,以将这些文件放回原处。

澄清一下:当我说快照文件时,我指的是 .ss 文件。

sql-server sql-server-2012
  • 1 个回答
  • 351 Views
Martin Hope
Lumpy
Asked: 2016-04-02 06:56:15 +0800 CST

跨链接服务器查询 sys.database_principals

  • 2

我试图在远程服务器上获取与他们关联的用户和角色的列表,以将其输入到本地服务器上的数据库中。但是当我使用链接服务器时,sys.database_principals 只显示链接服务器正在使用的登录信息。如何按数据库获取用户和角色列表到中央数据库位置?

sql-server sql-server-2012
  • 1 个回答
  • 256 Views
Martin Hope
Lumpy
Asked: 2014-05-30 07:16:54 +0800 CST

SQL Server FILELISTONLY 命令提供了不正确的逻辑数据库名称

  • 0

当使用 RESTORE FILELISTONLY 来使用代码恢复数据库时,文件的 logical_name 返回为 423。

但是,当我手动恢复数据库时,逻辑文件名似乎是 3497。

我正在运行 SQL Server 2008 R2。有没有人遇到过这样的事情?我该如何修复?

sql-server backup
  • 1 个回答
  • 601 Views
Martin Hope
Lumpy
Asked: 2013-10-02 06:10:57 +0800 CST

选择行数据作为列列表

  • 2

在我的数据库中,我有一组可由客户设置的自定义字段值。他们可以为这些字段创建标签,然后分配链接回数据库中特定表的值。我需要能够报告此信息,以便标签显示为列并且值在下面列出。我可以使用 PIVOT 函数来做到这一点,只是值中的信息不一定是可聚合的。(我正在编新词)我正在使用以下代码进行测试。

create table custlabel (custlabelid int identity(1,1) not null, custlabel varchar(50))
CREATE table custvalue (custvalueid int identity(1,1) not null, custlabelid int not null, custvalue varchar(50), linkageid int not null)
create table linkage (linkageid int identity(1,1), blah varchar(50))

INSERT into linkage(blah)
values('test'), ('test2'), ('test3')

INSERT INTO custlabel(custlabel)
values('info1'), ('info2'), ('info3'), ('info4'), ('info5')

INSERT INTO custvalue(custlabelid, custvalue, linkageid)
VALUES(1, 'info1 value1', 1),
(1, 'info1 value2', 1),
(1, 'info1 value3', 1),
(2, 'info2 value1', 1),
(2, 'info2 value2', 1),
(2, 'info2 value3', 1),
(2, 'info2 value4', 1),
(3, 'info3 value1', 1),
(3, 'info3 value2', 1),
(3, 'info3 value3', 1),
(4, 'info4 value1', 1)

我需要看到的是

blah, info1, info2, info3, info4, info5
test, info1 value1, info2 value1, info3 value1, NULL, NULL
test, info1 value2, info2 value2, info3 value2, NULL, NULL
test, info1 value3, info2 value3, info3 value3, NULL, NULL
test, info4 value1, NULL, NULL, NULL, NULL
sql-server-2008-r2 pivot
  • 1 个回答
  • 6372 Views
Martin Hope
Lumpy
Asked: 2013-07-30 10:16:02 +0800 CST

需要了解并行查询执行错误

  • 24

今天,我们的生产 sql 服务器的性能下降了。在发生这种情况期间,我们记录了几个"The query processor could not start the necessary thread resources for parallel query execution"错误。我所做的阅读表明,这与执行复杂查询时使用多少 CPU 有关。但是,当我在停电期间检查我们的CPU Utilization was only at 7%. 还有其他我还没有遇到过的东西吗?这可能是性能下降的罪魁祸首还是我在追逐红鲱鱼?

我的 sp_configure 值如下:

name                                minimum maximum config_value run_value
cost threshold for parallelism      0       32767   5            5
sql-server sql-server-2008-r2
  • 2 个回答
  • 33427 Views
Martin Hope
Lumpy
Asked: 2013-07-30 09:21:15 +0800 CST

检查 SQL Server 的内存使用情况

  • 2

有没有办法检查 SQL Server 实际使用了多少 SQL Server 保留的内存?

有没有办法过去看看这些信息?即一小时前使用了多少内存?

sql-server sql-server-2008-r2
  • 2 个回答
  • 1072 Views
Martin Hope
Lumpy
Asked: 2013-05-07 10:10:57 +0800 CST

日志文件增长问题

  • 4

我们每晚将来自一堆数据库的数据整合到四个报告数据库中。

因为整个数据集是每晚导入的,所以我们不需要能够将数据恢复到某个时间点。因此数据库处于简单恢复模式。

然而,每次我们运行导入时,我们的数据库ldf文件都会增长到大得离谱(50+ Gigs)。

有没有办法完全关闭日志记录或让 SQL Server 更快地清除这些日志文件?

我猜不会按原样log_reuse_wait_desc清理ACTIVE_TRANSACTION。

sql-server-2008 transaction-log
  • 1 个回答
  • 136 Views
Martin Hope
Lumpy
Asked: 2013-04-20 11:11:32 +0800 CST

聚簇索引与非聚簇索引

  • 2

ID我的数据库当前在每个表的列上都有一个主键/聚集索引。然而,连接到数据库的应用程序总是在查看定义为:

SELECT * FROM Table WHERE DeletedDate IS NULL

最好将 添加DeletedDate到聚集索引,还是将非聚集索引DeletedDate作为包含项更好?

sql-server sql-server-2008-r2
  • 2 个回答
  • 716 Views
Martin Hope
Lumpy
Asked: 2013-03-20 18:26:10 +0800 CST

针对死锁/阻塞的适当操作

  • 1

我已经设置了我的数据库,以便只要程序被阻止超过 45 秒,数据库就会通知 DBA 电子邮件。设置一种自动终止正在执行阻塞的进程的方法是不好的做法吗?我假设是的;但是,等到下班时间 DBA 可以拿到计算机并修复变更接缝时也有问题。有没有更好的方法来处理阻塞过程?

sql-server-2008 deadlock
  • 1 个回答
  • 131 Views
Martin Hope
Lumpy
Asked: 2013-03-13 04:10:39 +0800 CST

查询以通过滚动间隔确定计数

  • 1

我正在查看订单并尝试模拟我们在查询中执行的一些消息传递,以便市场营销部门可以获得一个基线,了解如果我们更改消息传递的时间间隔,他们可能会收到多少响应。在这种情况下,消息是根据订单触发的。这个想法是,在间隔结束之前,无论下了多少订单,客户都只会收到一条消息。例如

John orders on Monday,  message goes out.  (count = 1)
John orders on Thurday,
John orders on Sunday,
John orders on Tuesday  message goes out.  (count = 2)

更复杂的是,没有一组静态的间隔。该时间间隔从客户第一次下订单时开始。因此,约翰的间歇训练从星期一开始,而苏珊的间歇训练可能从星期五开始。

这是我到目前为止所得到的。任何帮助,将不胜感激。

DECLARE @Interval INT = 7                     

SELECT o.intappid,
       o.intCustomerID, 
       MAX(o.intOrderID), 
       MAX(o.dtshipdate), 
       DATEPART(DAYOFYEAR, o.dtshipdate)/@Interval
  FROM .dbo.[order] o
 WHERE YEAR(o.dtShipDate) = 2012 
   AND o.intAppID = 18
   AND o.intCustomerID = 296
 GROUP BY o.intCustomerID, o.intAppID, DATEPART(DAYOFYEAR, o.dtshipdate)/@Interval
 order by o.intAppID, o.intcustomerid, DATEPART(DAYOFYEAR, o.dtshipdate)/@Interval

此查询的示例输出

intappid    intCustomerID   (No column name)    (No column name)    (No column name)
18          296             21954               2012-03-07          9
18          296             22671               2012-04-25          16
18          296             22728               2012-04-30          17
18          296             23354               2012-06-14          23
sql-server-2008
  • 1 个回答
  • 261 Views
Martin Hope
Lumpy
Asked: 2013-03-09 07:27:13 +0800 CST

负载测试速成班

  • 4

有人可以指点我一个很好的资源来获得负载测试的速成课程吗?

我有一台需要负载测试的 SQL Server 机器,但我之前没有经历过这个过程。我们没有任何第三方软件,也没有钱购买任何软件,因此该选项将被淘汰。

sql-server sql-server-2008-r2
  • 1 个回答
  • 755 Views
Martin Hope
Lumpy
Asked: 2013-03-05 07:20:56 +0800 CST

是否将主键添加为聚集索引?

  • 2

我继承了一个数据库,其中没有在表上定义主键。也没有为表分配聚簇索引。

如果我执行一个 alter table 来分配一个主键,这会导致 SQL Server 也创建一个聚集索引吗?如果是这样,我是否应该期望由于数据在硬盘上重新定位的 IO 而导致数据库运行缓慢?

sql-server sql-server-2008
  • 1 个回答
  • 194 Views
Martin Hope
Lumpy
Asked: 2013-02-28 05:32:26 +0800 CST

将 Access 架构拉入 SQL Server 表

  • 2

我们有一个程序集,用于从 Access 数据库中提取表及其列的列表,并将列表放入 SQL Server 表中供以后使用。由于各种原因,该组件不再工作,目前无法进行返工。

有没有办法从链接的服务器 Access 数据库中提取表名和列的列表?如果没有,是否可以从 SSIS 包中提取此信息?我需要的输出非常简单:

Customer    First Name
Customer    Last Name
Customer    Email
Product     Product ID
Product     Product Name
...
sql-server-2008 ssis
  • 2 个回答
  • 361 Views
Martin Hope
Lumpy
Asked: 2013-02-08 05:14:24 +0800 CST

识别阻塞并发送警报

  • 7

我需要创建一个警报,当任何查询被阻止超过 60 秒时会通知我。例如,如果有人在表上打开了一个事务并且忘记运行提交或回滚。这可以从系统表中获得吗?

sql-server-2008-r2
  • 2 个回答
  • 11417 Views
Martin Hope
Lumpy
Asked: 2013-02-06 05:55:27 +0800 CST

逗号分隔的列修复

  • 5

在我目前的工作地点,有人决定将 ID 放入逗号分隔的列中。我希望将它们分解成适当的多对多关系。然而; 引用此数据的应用程序不会立即更改。所以我需要修改一个视图以仍然显示逗号分隔的列。设置视图以显示逗号分隔列的最佳方法是什么?有没有一种不涉及离开原始列的方法?

表定义的精简版本如下。

ID
ProductName
FeatureIDs

ID     ProductName    FeatureIDS
1      Hot dog        1,5,4
2      Hamburger      1,3
3      Fish           2

ID
FeatureName

ID     FeatureName
1      Mayo
2      TarTar Sauce
3      Pickle
4      Relish
5      Onion

最后,我想将这些组合成一个产品表和多对多关系

ID ProductName 产品类型

其中产品类型可以是“产品”或“功能”

ID productid featureid

对于映射表。

是的,设置的视图需要是可更新的视图。

sql-server-2008-r2
  • 1 个回答
  • 341 Views
Martin Hope
Lumpy
Asked: 2013-02-01 08:14:28 +0800 CST

根据列中的值返回记录的百分比

  • 2

我正在处理一个 sql 查询,该查询需要根据特定列的值获取一定百分比的记录。百分比由用户给出。查询的精简版本如下

SELECT OrganizationID,
       CustomerID,
       OrderID
  FROM x

输出看起来像

 OrganizationID, CustomerID, OrderID 
  123             abc         p456
  123             cba         p457 
  123             bac         p458 
  456             def         p987 
  456             efd         p988

我需要能够为每个组织 ID 提取 50% 的输出。所以在这个例子中,我会返回 2-3 条记录。只要提取了正确百分比的记录,哪些记录并不重要。

关于如何解决这个问题的任何想法?

sql-server-2008 t-sql
  • 1 个回答
  • 2541 Views
Martin Hope
Lumpy
Asked: 2013-01-08 12:44:58 +0800 CST

关于备份解决方案的建议

  • 2

我们的数据库服务器由另一家公司托管。它们提供每天发生一次的文件级备份。它们还允许日志传送。我的公司正在利用他们的 Logshipping 选项作为他们备份和恢复解决方案的主要部分。

我希望有一个更好的备份系统,使我们能够将数据恢复到发生故障的时间点。通常,这将是数据库的完整备份模型和事务日志的备份以及完整和增量备份。但是,供应商告诉我,为我们提供事务日志备份会导致日志传送出现问题。

是否有备份策略可以让我恢复到故障点并使用日志传送?

sql-server sql-server-2008-r2
  • 2 个回答
  • 135 Views
Martin Hope
Lumpy
Asked: 2012-12-04 10:07:38 +0800 CST

确定用户可以删除数据库的原因

  • 9

我有一个能够删除任何数据库的 sql server 用户。我一直在运行下面的代码来检查用户在 SQL Server 中拥有的权限,但无法确定用户如何能够删除数据库。是否有一个 sql 脚本可以帮助我确定该用户如何删除数据库?是否有命令拒绝他们删除任何数据库?(SSMS 未将用户显示为 dbcreator 角色的一部分)

select USER_NAME(p.grantee_principal_id) AS principal_name,
    dp.type_desc AS principal_type_desc,
    p.class_desc,
    OBJECT_NAME(p.major_id) AS object_name,
    p.permission_name,
    p.state_desc AS permission_state_desc 
from    sys.database_permissions p
inner   JOIN sys.database_principals dp
on     p.grantee_principal_id = dp.principal_id
order by principal_name

如果有帮助,上面查询的输出为用户提供了以下三个记录

class_desc object_name permission_name permission_state_desc OBJECT_OR_COLUMN xp_cmdshell 执行 GRANT DATABASE NULL CONNECT GRANT
DATABASE NULL CREATE DATABASE GRANT

sql-server-2008 permissions
  • 3 个回答
  • 1124 Views
Martin Hope
Lumpy
Asked: 2012-12-04 07:12:40 +0800 CST

应该为任何逻辑文件名指定一个 WITH MOVE 子句

  • 2

我正在尝试通过编写备份和还原脚本来复制数据库。我的备份程序正常工作,但我不断收到错误

已为文件指定了冲突的文件重定位。对于任何逻辑文件名,只应指定一个 WITH MOVE 子句。

当我运行程序进行恢复时。

这是程序代码。谁能发现我的错误是什么?

ALTER PROCEDURE spDBRestore (@BackupName NVARCHAR(50), @RestoreName NVARCHAR(50))
AS 
BEGIN
DECLARE @BackupPath NVARCHAR(4000) = 'S:\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\TemplateCopy\'+@BackupName+'.BAK',
@NewDBFileName NVARCHAR(4000) = 'S:\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\'+@RestoreName+'.mdf',
@NewLFFileName NVARCHAR(4000) = 'L:\MSSQL10_50.MSSQLSERVER\MSSQL\Data\'+@RestoreName+'_1.ldf'
select @BackupName, @RestoreName, @NewDBFileName, @newlffilename
RESTORE DATABASE @RestoreName
FROM DISK = @BackupPath
WITH FILE = 1,
MOVE @BackupName TO @NewDBFileName,
MOVE @BackupName TO @NewLFFileName,
NOUNLOAD,
REPLACE;

END
sql-server sql-server-2008
  • 1 个回答
  • 3122 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