我正在连接到Azure数据库(S4)并在该数据库上运行查询,该数据库是我通过Windows10笔记本电脑上的SQL Server Management studio连接到的。我正在运行一个复杂的查询,它会在大约5小时后给我一个select输出,但是由于数据库太大,任何网络问题都会导致我得到一个传输错误,并丢失我应该得到的所有输出。
如果这发生在本地数据库上,我会简单地将查询放在SQL Server代理作业中。但是,当连接到azure数据库实例时,我在Azure实例中看不到任何可供我添加查询的sql server代理。
我希望能够在SQL Server Azure数据库上远程运行长时间运行的查询
我有一个很长的SQL脚本,我想为一台服务器上的每个数据库运行它。那么最好的方法是什么呢?
我在我的研究中发现了这个:
EXEC sp_msforeachdb "
IF '?' IN ('lib1','lib2','lib3')
BEGIN
use ?;
exec 'my_sp_long_sql_script'
END
"
我试过了,但它需要我在每个库中创建sp,这有点违背了循环的目的。或者,如何自动为每个库创建一个sp?
我所要做的就
我的任务是为一台Windows笔记本电脑开发一个应用程序,工程师可以把它带到没有互联网接入的领域。然后,他们将通过一个表单添加数据,一旦他们回来并可以访问互联网,他们就可以点击“同步”按钮,将他们收集的数据发送到外部SQL Server数据库。
数据库是SQL Server 2016,应用程序将是C# .NET桌面应用程序。我的问题是,在没有internet访问的情况下,数据库有哪些可用选项?我真的不想做Excel或Access。我真的很喜欢SQL Server Compact,但它似乎过时了。SQL Server Compact是否仍然与最新的.NET框架相关,或者是否有每个人都在使用的较新
这是在SQL Server 2008上运行的,但数据库处于SQL Server 2000兼容模式(这一点我无法更改)。
在存储过程开始时创建一个临时表,然后通过动态生成的EXEC语句将其插入到其中。即使临时表(据我所知,应该是临时表)不在执行范围内,如何才能成功执行这些语句,或者在存储过程中执行这些语句时会暂时绕过临时表吗?
示例如下:
CREATE PROCEDURE myProc (Param1 int....)
AS
BEGIN
Declare @SQL varchar(max) = null
Create table #tempTable
(
ID
假设我有一个SQL文件commands.sql,里面充满了SQL命令。其目的是用户可以通过使用所描述的中的SOURCE命令来运行文件中的命令。但是假设用户已经选择了一个数据库。如果用户没有选择数据库,那么他们将看到大量的“没有选择数据库”错误。
有没有一种方法可以使用IF语句来检查数据库是否被选中,比如
IF a database is selected THEN
(statements)
ELSE
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'You need to select a database'
我有一个第三方Sybase数据库,我的用户希望使用iSQL连接到这个数据库并从Linux框中进行查询。我安装了UnixODBC和FreeTDS。然而,由于它是第三方数据库,我无法执行任何赠款。对于Linux上的iSQL,查询失败:
[42501][unixODBC][FreeTDS][SQL Server]ASA Error -121: Permission denied: you do not have permission to use the "CREATE PROCEDURE" statement
看来由iSQL发送的实际SQL是CREATE PROCEDURE <
我的项目即将完成,即将投入生产。为了在我们开始SP准备和其他阶段之前将生产数据库置于源代码控制中,我创建了一个数据库项目(SQL DB 2005)。没有问题,我想我能从db项目中得到一切。当我通过部署到本地.\SQLEXPRESS来测试数据库项目时,我收到了与以下类似的警告:
SQL04151: Procedure: [dbo].[spGetSalesData] has an unresolved reference to object [sys].[objects].
我该如何解决这个问题?这是我第一次使用数据库项目,所以它可能是次要的。
从SQL Server 2005使用SQL Server Management Studio时,我可以连接到SQL Server 2000的实例...但是所有的存储过程都没有出现。是否有一些技巧可以让SQL Server Enterprise Manager 2005正确地与SQL Server 2000数据库通信?
我需要编写一些sp,它将从两个不同的服务器检索行。我不想使用链接服务器或打开查询。还有别的办法吗?我的计划是在不同的服务器中创建两个不同的sp,然后在前端和前端访问数据,我将编写逻辑。我认为这会很复杂。
我们现在正在将一个vb6应用程序的某些部分迁移到.net。VB6的数据库是SQL2000,它将在一台服务器上。在.net中,数据库将在SQL2008中。现在我们已经在sql server 2008中创建了一些在SQL2000中可用的表。我们需要从.net调用相同的vb应用程序的sp。现在,因为一些表已经从sql server 2000更改到2008,所以我遇到了问题。请提个建议。如果你清楚地理
Linq to SQL和Linq to Entities依赖于创建动态SQL来完成大量工作,特别是当您让类以某种方式表示数据库表时。然而,如果数据库不允许即席SQL查询,并且所有东西都必须通过存储过程,如果开发人员必须预先编写所有SP来完成所有工作,并且知道这些都是将在应用程序中的所有场景中使用的所有SP,那么我看不出使用L2Q或L2E有多大价值。
视图可能会缓解这种情况,但是如果创建视图需要DBA权限,这仍然是一个麻烦。
1.)mysql中存储过程的替代方法,可以对其进行更改,而不是删除并重新创建
2.)维护数据库版本的简单方法我目前正在手动创建log.sql文件,例如示例log.sql文件
ALTER TABLE `ship`
CHANGE COLUMN `is_deleted` `is_deleted` INT(11) NULL DEFAULT 0 ;
DROP procedure IF EXISTS `get_ship`;
DELIMITER ;;
CREATE PROCEDURE `get_ship`(
)
BEGIN
do something;
end if;
END ;;
DELIMI
我要创建启动存储过程,任何时候sql运行检索数据库。这是我的代码,我哪里错了?请帮帮我。
USE MASTER
GO
CREATE PROC SP_RetrievalDataBase
AS
BEGIN
EXEC sp_detach_db 'AdventureWorks2012'
CREATE DATABASE MyAdventureWorks
ON
(FILENAME = 'G:\SQL Server 2012\AdventureWorks2012_Database\AdventureWorks2012_Data.mdf'),
(FILENAME = '