标签: sql-server-2000

如果函数已经存在,如何删除它?

我知道这一定很简单,但是我如何通过检查来创建一个函数来查看它是否已经存在?如果它存在,我想删除并重新创建它.

t-sql sql-server-2000

93
推荐指数
6
解决办法
12万
查看次数

有没有办法坚持变量?

有没有办法坚持变量?

Declare @bob as varchar(50);
Set @bob = 'SweetDB'; 
GO
USE @bob  --- see note below
GO
INSERT INTO @bob.[dbo].[ProjectVersion] ([DB_Name], [Script]) VALUES (@bob,'1.2')
Run Code Online (Sandbox Code Playgroud)

请参阅"USE @bob"行的SO问题.

sql sql-server sql-server-2000 sql-server-2008 sql-server-2012

73
推荐指数
4
解决办法
4万
查看次数

如何在SQL Server中的所有数据库中查找所有表的列名

我想在所有数据库的所有表找到所有列名.有查询可以帮我吗?该数据库是Microsoft SQL Server 2000.

sql t-sql sql-server sql-server-2000 database-schema

62
推荐指数
4
解决办法
16万
查看次数

使用T-SQL获取日期时间?

如何获得给定datetime值的时间?

我有一个datetime像这样的数据库:

2010-09-06 17:07:28.170
Run Code Online (Sandbox Code Playgroud)

并且只想要时间部分:

17:07:28.170
Run Code Online (Sandbox Code Playgroud)

有什么功能吗?

t-sql sql-server datetime sql-server-2000

62
推荐指数
5
解决办法
13万
查看次数

如何在将数据导出到CSV平面文件时修复嵌入的文本限定符问题?

RFC 4180:

RFC 4180定义Common Format and MIME Type for Comma-Separated Values (CSV) Files.其中一个要求RFC 4180如下所述.这是#7RFC链接中的要点.

If double-quotes are used to enclose fields, then a double-quote
appearing inside a field must be escaped by preceding it with
another double quote.  For example:

"aaa","b""bb","ccc"
Run Code Online (Sandbox Code Playgroud)

SQL Server 2000:

DTS Export/Import WizardSQL Server 2000似乎符合上述标准,即使RFC 4180本身似乎一直只公布2005年10月.我使用下面提到的SQL Server 2000版本.

Microsoft SQL Server  2000 - 8.00.2039 (Intel X86) 
May  3 2005 23:18:38 
Copyright (c) …
Run Code Online (Sandbox Code Playgroud)

sql-server ssis sql-server-2000 sql-server-2012

62
推荐指数
1
解决办法
5万
查看次数

有没有办法获取SQL Server中所有当前临时表的列表?

我意识到临时表是会话/连接绑定的,不可见或可从会话/连接访问.

我有一个长期运行的存储过程,在各个阶段创建临时表.

有没有办法可以看到当前临时表的列表?我需要什么特权才能这样做?

或者,

有没有办法可以看到正在运行的存储过程中执行的特定SQL语句?该过程作为SQL Server中的计划作业运行.

我正在使用SQL Server 2000.

谢谢你的指导.

sql sql-server sql-server-2000 temp-tables

61
推荐指数
3
解决办法
10万
查看次数

SQL IN对性能有害吗?

我有一个查询做类似的事情:

SELECT FieldX, FieldY FROM A
WHERE FieldW IN (108, 109, 113, 138, 146, 160,
307, 314, 370, 371, 441, 454 ,457, 458, 479, 480,
485, 488, 490, 492, 519, 523, 525, 534, 539, 543,
546, 547, 550, 564, 573, 629, 642, 643, 649, 650,
651, 694, 698, 699, 761, 762, 768, 772, 773, 774,
775, 778, 784, 843, 844, 848, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 868, 869, 871, 872, …
Run Code Online (Sandbox Code Playgroud)

sql sql-server-2000

60
推荐指数
4
解决办法
5万
查看次数

如何使用简单的insert语句将二进制文件数据插入二进制SQL字段?

我有一个SQL Server 2000,其中包含一个包含image列的表.

如何通过指定文件的路径将文件的二进制数据插入该列?

CREATE TABLE Files
(
  FileId int,
  FileData image
)
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server sql-server-2000

60
推荐指数
2
解决办法
10万
查看次数

SQL Server 2000:如何退出存储过程?

如何在存储过程中退出?

我有一个存储过程,我想尽早摆脱(尝试调试).我已经打过电话RETURN,并RAISERROR和SP在后台继续运行:

CREATE PROCEDURE dbo.Archive_Session @SessionGUID uniqueidentifier AS

    print 'before raiserror'
    raiserror('this is a raised error', 18, 1)
    print 'before return'
    return -1
    print 'after return'

[snip]
Run Code Online (Sandbox Code Playgroud)

我知道它继续运行,因为我遇到了进一步的错误.我看不到任何印刷品.如果我注释掉大部分存储过程:

CREATE PROCEDURE dbo.Archive_Session @SessionGUID uniqueidentifier AS

    print 'before raiserror'
    raiserror('this is a raised error', 18, 1)
    print 'before return'
    return -1
    print 'after return'

   /*
     [snip]
   */
Run Code Online (Sandbox Code Playgroud)

然后我没有得到我的错误,我看到结果:

before raiserror
Server: Msg 50000, Level 18, State 1, Procedure Archive_Session, Line 5
this is a raised error …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server stored-procedures sql-server-2000 flow-control

60
推荐指数
6
解决办法
14万
查看次数

按日期排序显示NULLS首先是最近的日期

我有一个执行select语句的存储过程.我希望我的结果按日期字段排序,并显示所有记录首先是NULL日期,然后是最近的日期.

声明如下:

SELECT a,b,c,[Submission Date]
FROM someView
ORDER BY [Submission Date] ASC
Run Code Online (Sandbox Code Playgroud)

现在,这将首先显示所有具有NULL提交日期的记录,但是当我到达具有日期值的行时,它们不是视图中的最新日期.

如果我用DESC替换ASC,那么我按照我想要的顺序获取日期,但NULL值位于我的结果集的底部.

有没有办法构建我的查询,以便我可以在顶部显示空值,然后当有日期值时,为了命令它们从最近的下降到最早?

sql-server sql-server-2000

58
推荐指数
3
解决办法
6万
查看次数