推荐的批量大小是SqlBulkCopy多少?我正在寻找一个可用作性能调优起点的通用公式.
在SQL Server执行计划中,索引扫描和索引搜索之间的区别是什么
我在SQL Server 2005上.
我正在尝试从SQL Server数据库备份文件(.bak)转换为MySQL.这个问题和答案非常有用,我已经成功导入了数据库,但现在我仍然坚持导出到MySQL.
建议使用MySQL Migration Toolkit,但似乎已被MySQL Workbench取代.是否可以使用MySQL Workbench以与迁移工具相同的方式从SQL Server迁移?
或者迁移工具包是否仍可在某处使用?
我有两张桌子:
TableA
------
ID,
Name
TableB
------
ID,
SomeColumn,
TableA_ID (FK for TableA)
Run Code Online (Sandbox Code Playgroud)
这种关系是一排TableA- 许多TableB.
现在,我希望看到这样的结果:
ID Name SomeColumn
1. ABC X, Y, Z (these are three different rows)
2. MNO R, S
Run Code Online (Sandbox Code Playgroud)
这不起作用(子查询中有多个结果):
SELECT ID,
Name,
(SELECT SomeColumn FROM TableB WHERE F_ID=TableA.ID)
FROM TableA
Run Code Online (Sandbox Code Playgroud)
如果我在客户端进行处理,这是一个微不足道的问题.但这意味着我必须在每个页面上运行X查询,其中X是结果的数量TableA.
请注意,我不能简单地执行GROUP BY或类似的操作,因为它将为行返回多个结果TableA.
我不确定使用COALESCE或类似东西的UDF是否可行?
是否有一种简洁的方法从sql server表中检索随机记录?
我想随机化我的单元测试数据,所以我正在寻找一种从表中选择随机id的简单方法.在英语中,select将是"从表中选择一个id,其中id是表中最低id和表中最高id之间的随机数."
我无法找到一种方法来执行它而无需运行查询,测试空值,然后重新运行,如果为null.
想法?
我们可以有一个SQL查询,它基本上有助于查看SQl Server中的表和索引大小.
SQL Server如何维护表/索引的内存使用?
这是我的情景:
假设我有一个存储过程,我需要在一组特定的id上调用另一个存储过程; 有没有办法做到这一点?
即而不是需要这样做:
exec p_MyInnerProcedure 4
exec p_MyInnerProcedure 7
exec p_MyInnerProcedure 12
exec p_MyInnerProcedure 22
exec p_MyInnerProcedure 19
Run Code Online (Sandbox Code Playgroud)
做这样的事情:
*magic where I specify my list contains 4,7,12,22,19*
DECLARE my_cursor CURSOR FAST_FORWARD FOR
*magic select*
OPEN my_cursor
FETCH NEXT FROM my_cursor INTO @MyId
WHILE @@FETCH_STATUS = 0
BEGIN
exec p_MyInnerProcedure @MyId
FETCH NEXT FROM my_cursor INTO @MyId
END
Run Code Online (Sandbox Code Playgroud)
我的主要目标是简单的可维护性(随着业务的变化,很容易删除/添加id),能够在一行中列出所有Id ...性能不应该是一个大问题
据我所知,在SQL Server 2005之前,您可以"欺骗"SQL Server以允许在视图定义中使用顺序,也包括TOP 100 PERCENT在SELECT子句中.但是我已经看到了我继承的其他代码,它们SELECT TOP 100 PERCENT在动态SQL语句中使用...(在 ASP.NET应用程序中用于ADO等).这有什么理由吗?结果不一样,不包括?TOP 100 PERCENT
我使用ADO Connection OpenSchema()调用以各种方式成功从SQL服务器上托管的数据库中提取列定义,因此我可以在另一个SQL数据库中以编程方式重新创建这些表.到现在为止还挺好.
使用多个视图进行与上表的主要交互; 虽然OpenSchema()能够以与返回表的列定义相同的方式返回视图的列定义,但缺少一小部分信息 - 视图中的列映射到的基础表中的哪个表和列.
我尝试使用ADOX目录视图访问用于创建视图的SQL命令,但似乎我们使用的SQL Server的OLEDB驱动程序不支持此功能.
有没有办法通过ADO获取视图配置的这些信息,或者以"ColumnX映射到表Z中的ColumnY"的方式或以用于创建视图的实际SQL命令的形式?
由于SQL Server返回时间戳'Nov 14 2011 03:12:12:947PM',是否有一些简单的方法将字符串转换为日期格式,如'Ymd H:i:s'.
到目前为止我用了
date('Y-m-d H:i:s',strtotime('Nov 14 2011 03:12:12:947PM'))
Run Code Online (Sandbox Code Playgroud)