标签: sql-server-2005

使用递归CTE投射错误

我试图以.1为增量从-1到1生成一个数字列表.以下是代码给我一个错误:

WITH NumTab AS(
    SELECT -1.0 AS Num 
    UNION ALL 
    SELECT Num + .1
    FROM NumTab 
    WHERE Num <= 1.0
)
SELECT * FROM NumTab
Run Code Online (Sandbox Code Playgroud)

锚和递归查询"NumTab"列"Num"中的递归部分之间的类型不匹配.

我已经尝试将所有数字投射到decimal(2,1)结果中没有变化.必须有一些我不知道的明显的东西......

sql sql-server-2005 common-table-expression

0
推荐指数
1
解决办法
941
查看次数

基于数组字段中的整数选择记录

我有一个房子数据库.在房屋内,mssql数据库记录是一个名为areaID的字段.房子可以在多个区域,因此数据库中的条目可以如下:

+---------+----------------------+-----------+-------------+-------+
| HouseID | AreaID               | HouseType | Description | Title |
+---------+----------------------+-----------+-------------+-------+
| 21      | 17, 32, 53           | B         | data        | data  |
+---------+----------------------+-----------+-------------+-------+
| 23      | 23, 73               | B         | data        | data  |
+---------+----------------------+-----------+-------------+-------+
| 24      | 53, 12, 153, 72, 153 | B         | data        | data  |
+---------+----------------------+-----------+-------------+-------+
| 23      | 23, 53               | B         | data        | data  |
+---------+----------------------+-----------+-------------+-------+
Run Code Online (Sandbox Code Playgroud)

如果我打开一个仅在区域53中呼叫房屋的页面,我将如何搜索它.我知道在MySQL中你可以使用find_in_SET但我使用的是Microsoft SQL Server 2005.

sql t-sql sql-server sql-server-2005

0
推荐指数
1
解决办法
89
查看次数

使用其他表的数据更新表

我正在使用Visual Studio 2008和Sql Server 2005

我想使用其他表中的值来更新表,我已经编写了一个查询,但它给出了错误

"无法将值NULL插入列'Quantity',表'Stationarymgmt.dbo.Item_Master';列不允许空值.UPDATE失败."

临时表有以下列Item_Code,Quantity,Cost,Name,Decription,

Item_Master表包含以下列:Item_Code,Name,Decription,Cost,Quantity,

查询是

    UPDATE Item_Master,temp
 SET Item_Master.Quantity = Item_Master.Quantity - temp.Quantity where Item_Master.Item_Code = temp.Item_Code
Run Code Online (Sandbox Code Playgroud)

请帮帮我

.net sql vb.net sql-server-2005

0
推荐指数
1
解决办法
223
查看次数

SQL查询需要很长时间才能执行

USE Pooja
GO
----Create TestTable
CREATE TABLE TestTable(RtJobCode VARCHAR(20), RtProfCode smallint,RtTestCode smallint,ProfCode smallint,TestCode smallint)
----INSERT INTO TestTable using SELECT
INSERT INTO TestTable (RtJobCode, RtProfCode,RtTestCode,ProfCode,TestCode)
SELECT RtJobCode,RtTestCode,TestCode,RtProfCode,ProfCode
FROM dbo.ResultTest,dbo.Test,dbo.Profiles
WHERE RtTestCode=ANY(Select TestCode from dbo.Test)

----Verify that Data in TestTable
SELECT *
FROM TestTable

GO
Run Code Online (Sandbox Code Playgroud)

上面的代码试图从名为resutltest和profiles和test的表中取出条目,

问题是在创建一个多维数据集期间我遇到了一些在所有表中都不一致的数据,所以我尝试了对表的连接,但由于表包含大量的列,所以它是不可行的,所以尝试制作这段代码只是不停地执行而不停止显示任何数据

Resulttest的Rttestcode是testcode的外键

sql-server sql-server-2005

0
推荐指数
1
解决办法
974
查看次数

SQL Server 2005存储过程

我正在编写一个存储过程来更新事务表.

我将一次更新一种交易类型(装运,收货或处置)

如果我正在更新货件,我将传入一个值,并将另外两个留空.

我如何编写存储过程,以便它只在我传入的值不是NULL(或0,更容易)时更新字段,并保留其他的原样?

这是我现在的位置:

CREATE PROCEDURE [dbo].[sp_UpdateTransaction] 
    -- Add the parameters for the stored procedure here
    @ID int,
    @disposalID int,
    @shipID int,
    @recID int,
as
begin
   update tblX
   set
     disposalID = COALESCE(@disposalID, disposalID)
     receiptID = COALESCE(@recID, receiptID)
     shipmentID = COALESCE(@shipID,shipmentID)
   where ID = @sID 
END 
Run Code Online (Sandbox Code Playgroud)

COALESCE 似乎不起作用,因为我一直在收到错误,是否还有其他功能可以用来实现这一目标?

我越来越:

'receiptID'附近的语法不正确.

我不明白为什么:(

谢谢!

sql sql-server stored-procedures sql-server-2005 coalesce

0
推荐指数
1
解决办法
985
查看次数

使用VS.net 2008创建的SSIS包是否可以访问SQL Server 2005数据库?

使用VS.net 2008创建的SSIS包是否可以访问SQL Server 2005数据库?

包在VS.net 2008中创建.包中的操作/方法将从/向SQL Server 2005数据库读取和写入.

程序包将从SQL Server 2008服务器执行/运行.

这是支持的方案吗?

我的DBA说没有,但我的想法是,如果您创建了一个访问Oracle/DB2/Flat文件的VS.net 2008 SSIS包.在这种情况下,SQL Server 2005不仅仅是一个数据存储吗?

ssis sql-server-2005

0
推荐指数
1
解决办法
251
查看次数

需要更改生产数据库中的列类型(SQL Server 2005)

我需要帮助编写TSQL脚本来修改两列的数据类型.

我们正在更改两列:

  • uniqueidentifier - > varchar(36)***具有主键约束
  • xml - > nvarchar(4000)

我主要担心的是脚本的生产部署......

该表由一个公共网站主动使用,每小时可获得数千次点击.因此,我们需要脚本快速运行,而不会影响前端的服务.此外,如果发生错误,我们需要能够自动回滚事务.

幸运的是,该表只包含大约25行,所以我猜测更新会很快.

该数据库是SQL Server 2005.

(仅供参考 - 由于第三方工具与SQL Server的xml和uniqueidentifier类型不兼容,因此需要更改类型.我们已经测试了dev中的更改,并且更改没有任何功能问题.)

sql sql-server transactions sql-server-2005

0
推荐指数
1
解决办法
2839
查看次数

SQL查询在给定的时间间隔内拆分数字

我有一个数字(比如100,000).我想在15,000和19,900的给定间隔之间分割这个数字.我预计结果将在15,000到19,900之间.我需要一个SQL查询/函数来完成这项任务.

示例:如果我需要在15,000和19,900的间隔之间拆分100,000,结果应如下所示:

15100.00
16750.00
19365.22
18254.85
15987.65
14542.28
Run Code Online (Sandbox Code Playgroud)

请注意,所有这些值的总和等于100,000,提前感谢.

sql sql-server-2005

0
推荐指数
1
解决办法
621
查看次数

如何检索名称以S开头的学生的详细信息

如何退出名字以's'表名开头的学生的细节---学生列名--- sname plz告诉我查询

谢谢,

sql-server-2005

0
推荐指数
1
解决办法
67
查看次数

sql存储不同的值然后我存储

我正在使用sql server 2005和.NET.我有一个名为"价格"浮动列的表.当我存储1890时它存储1889.99966796875.

是什么原因?

.net t-sql sql-server-2005

0
推荐指数
1
解决办法
79
查看次数