我想在一个表中创建一个持久化的计算列,这样我就可以将它用作与另一个表的外键关系的一部分
我有这些桌子:
事件(EventID uniqueidentifier,EventCode varchar(8))--EventCode是一个鉴别器列
双方(EventID唯一标识符)
。。。我想在“Parties”中添加一个EventCode列,这样外键约束可以同时包含这两个列
我试过这个:
ALTER TABLE Parties ADD EventCode AS 'PARTY' PERSISTED
但我
我的数据库中有一个用户,我想授予他只读取一个视图、其他视图、表和其他视图的权限
我该怎么做
非常感谢
注意:我正在使用MS SQL Server 2005试试这个:
GRANT SELECT ON whatever_your_view_is_called TO bob_or_whatever_his_name_is
有关授予权限的其他示例,请参阅,这对于Enterprise Manager UI或使用其他一些人发布的SQL代码来说相当简单
我想补充的一点是,您希望避免在以后可能要锁定的任何对象
下面是一个存储过程,其中iam传递DriverID=0、DrivarCode=DD1和DriverName=Ram。
当执行控制将失败时。控制即将结束
如果((@DriverName!=NULL)和(@DriverCode!=NULL)),之后将失败。DriverName和DriverCode包含值。但仍将失败。原因可能是什么
Create Procedure InsertUpdateM
(
@DriverID int,
@DriverCode varchar(50),
我正在构建一个.NET CF 3.5应用程序,它将与基于服务器的MS SQL server 2005进行通信
通信将通过设备的WiFi连接进行
我一直在寻找一个好的O/R映射器,但我有点迷路了。大多数站点/用户都认为您将使用本地紧凑型数据库,而不是外部“正常”SQL server
在过去,我曾与entityspaces合作过(但现在似乎已经商业化了?),最近我与LinqtoSQL合作过
在带有普通MS SQL数据库的.NET CF应用程序上运行的易于学习和实现的O/R映射程序有什么好处?我几年前
对于表中的每条记录,如何将once单元格中的值插入同一记录中的另一个单元格,从而覆盖目标中的原始值?
这是一个一次性查询。使用SQLServer2008
e、 g:
到
尝试:
如果没有where子句,这将应用于表中的每一行。请尝试:
如果没有where子句,这将应用于表中的每一行。excel有单元格。在数据库中,考虑行、列和表。插入=创建新行,更新=更改列。我不知道我是否理解你想告诉我的内容。你解释的是语义学吗?就我而言,cell只是一个英语单词,它在OP的上下文中传达信息。你认为这个问题将如
我连接了两个表,每个表包含5000多条记录。我用了两种方法加入。在第一个查询中,我使用了JOIN关键字并在ON条件中给出了条件。
在第二个查询中,我在表之间使用了逗号运算符,并在WHERE子句中给出了连接条件
在时间和成本方面,哪一个有效
当我查看执行计划时,第一个查询的表扫描成本为61%,哈希匹配(内部联接)成本为38%
第二个查询的表扫描成本为69%,哈希匹配(内部联接)成本为31%
你能解释一下这种区别吗
Iam假设第一个是有效的,因为表扫描成本较低。是否正确…?定义“有效”。如果您的目标
我们有一个C应用程序,它可以发布到一个数据库,该数据库使用合并复制复制复制到另一个数据库,并且有一个自定义解析器,它是一个存储过程
这在SQLServer2000下运行良好,但在SQLServer2005下测试时,自定义解析器试图将任何空varchar列更改为null,并且失败,因为此特定列不允许null
请注意,这些varchar字段不是导致冲突的字段,因为它们在两个数据库上都是空的,并且没有被更改,存储过程也没有更改它们。它所做的一切都是试图设置另一个money列的值
有没有人遇到过这个问题
我有SQLServer2005。我对一个特殊的统计数据感兴趣。我可以通过右键单击来手动检查它的上次更新时间
如何使用TSQL检查它?看看函数:
返回表或索引视图的统计信息的最新更新日期
我有桌上用品
ID identity autoincement, IDArticle: nvarchar(100) ,IDCar nvarchar(100), createddate
如何将其转换为:
SELECT IDCar , MAX(createddate)
FROM Articles
GROUP BY IDCar
得到一篇文章
例如:
预期结果是:
art3
art5
它不会与以下内容重复:
+1,但是a.createdate=max.max\u date需要a.createdd
SSRS新手问题在这里
我有一个表,其中一列是varbinary(max)数据。我想制作一个报告,使这些数据可以作为超链接下载,这样用户只需单击该项目,就可以获得二进制数据的文件下载对话框。在这种特殊情况下,二进制数据恰好是旧pdf文件的内容,但这并不重要
我试着四处搜索,但找不到任何关于如何做这件事的指针。在我看来,这应该是可能的。使用varbinary数据,所以应该能够在报表上下载任意二进制数据,这是有意义的,对吧?不,据我所知,这是不可能的。无论如何,我都看不到有人这样做
我使用的解决方法
在SQL Server 2005的复制文件夹下找不到本地发布文件夹。已安装复制组件。我使用的是SQL Server 2005,而不是express edition
我刚刚安装了带有复制组件的SQLServer2005,右键单击复制文件夹,在那里我只能看到3个选项。1) 更新复制密码。2) 新建->订阅。3) 刷新
我也在serverfault上发布了这个问题,但在过去的一个多小时里没有任何回应,所以我在这里尝试
编辑:
此计算机上也安装了Express edition,但我无法在SQL Serv
我想构建一个T-SQL更改脚本,它将数据库更改从开发到测试再到生产。
我将脚本分为三部分:
DDL语句
存储过程的更改(创建和更改过程)
数据创建和修改
我希望这三个脚本中的所有更改都在事务中进行。要么处理脚本中的所有更改,要么在出现错误时回滚所有更改。
我通过使用try/catch和begin事务语句在步骤1和3中实现了这一点。
我现在的问题是对存储过程执行同样的操作。
直接在“create stored procedure”语句之前调用“begin transaction”会导致语法错误,告
我想将我的SQL Server 2005数据库移动到Oracle。我该怎么做?我想遵循的步骤是什么?是否有用于此目的的工具?更新:很抱歉提供了错误的信息。找到有用的东西和工具。可能的副本
我有一些字符串,比如
"999"
"555"
"7777"
"CC44"
"AAAA"
"BBBB"
我如何进行排序,以便输出
"999"
"7777"
"555"
"AAAA"
"BBBB"
"CC44"
规则是:基于字符串的升序数值
我也包括了剧本
declare @tbl Table(
data VARCHAR(MAX)
)
INSERT INTO @tbl (data)
SELECT '999' UNION ALL
SELECT '555' UNION ALL
S
无法从数据库检索数据。详细信息:[数据库供应商代码9421]
数据库使用的是 MSSQL 2005 连接在 ODBC > CR席>。当我在Designer中使用完全相同的参数打开报表时,一切都正常
它看起来与数据相关,但很难追踪,因为整个报告都非常复杂。不管怎样,我花了半天时间在谷歌博士身上爬行,他似乎不知道可能有什么问题。当你在Crystal Reports Developer中预览报告时,你看到了整个事情吗?在实际查看页面之前,不会计算某些自定义公式
尝试从上到下滚动整个报告。如果您的错误
使用MSSQL 2005,我习惯于编写如下语句:
delete
from myTable
where ID in (select ID from otherTable where deleted = 1)
当otherTable具有复合主键时,如何执行此操作
复合键有两列:
docnum float
version int
(我的google fu建议使用CTE来实现这一点,但我没有使用CTE的经验。)在MS SQL中,您可以这样做:
DELETE T
FROM myTable T
INNE
正如主题所述:
字母N在SQL中的作用如下:
SELECT P.ProductID,
S.SupplierID,
S.CompanyName
FROM Suppliers AS S JOIN Products AS P
ON (S.SupplierID = P.SupplierID)
WHERE P.UnitPrice > $10
AND S.CompanyName LIKE N'F%' -- what is the N for?
N表示字符串以
我有一个Windows7,我在我的操作系统上同时安装了SQLServer2005和SQLServer2008
当我运行mmc.msc microsoft管理控制台时,控制台会运行,但当我尝试添加管理单元(如证书)时,mmc崩溃,并出现以下错误:
Microsoft管理控制台已停止工作
带有两个调试和关闭程序按钮
请点击以下链接:
"http://social.technet.microsoft.com/Forums/en-US/winserverManagement/thread/26d0ae5
这是我的查询,我在临时表的中插入了一个值,但我得到的错误如下
算术溢出错误转换
将money转换为数据类型numeric
查询是:
DECLARE @EBT money
Declare @ConversionRatio money
Declare @TotalRevenues money
insert into #SummarySheet(Item,INR,Dollar,Percentage)
VALUES ('EBT', isnull(@EBT,0), isnull(@EBT,0)/isn
我有一个表只包含2列(Time和AMPM)。
两列都是NVARCHAR
时间……AMPM
上午7:30
08:45…..下午
下午12点
01:00….下午
上午12:00
我需要构建t-sql来将上述数据转换为
时间
07:30
20:45
12:00
13:00
00:00
你可能知道,我想把12小时制转换成24小时制的自定义字符串格式。
现在,我必须将time列转换为datetime变量,并再次转换为12小时时钟系统,因为我不想拆分字符串,然后执行加法/减法
请建议/指导我使用优化的t-s
我们运行SQLServer2005,有一个大约100GB的数据库(MDF是100GB,LDF是34GB)
我们的维护计划每晚备份一个完整的数据库。它被设置为
此备份大小通常在95-100 GB左右,但它突然增长到120 GB,然后是124 GB,然后是130 GB,然后在连续4天内又恢复到100 GB
有人知道这是什么原因吗?我不相信我们在这么短的时间内添加和删除了那么多数据 如果您的备份大于MDF,这意味着您也记录了大量日志活动。SQL Server注意到在完全备份期间发生的数据更改,并执行“
就在今天,我突然发现了这个错误
SourceName: ASP.NET 2.0.50727.0
Time: 20110628094209.000000+060
Message: Event code: 3005 Event message:
An unhandled exception has occurred. Event time: 28/06/2011 09:42:09 Event time (UTC): 28/06/2011 08:42:09 Event ID: 8543b22db
我有一个表,SCCalls,它有一个列Call\u CalT\u代码。调用计算代码可以是多个不同值之一。它还有一个列调用InDate,我将根据它进行筛选
我需要得到1000条随机记录,总共按Call_InDate过滤,平均分配每个Call_CalT_代码的数量
我该怎么做
编辑gbn:解决方案必须在SQL Server 2005上兼容模式为80的数据库上工作您可能需要在分区中使用数字
如果您有9个值,那么1000/9=111,这样您只能返回999行。所以我用了1100和后来的1000
SELEC
我使用的是SQLServer2005Express版。我想在表中存储出生日期,我应该使用哪种数据类型
Datetime还提供时间和日期
在SQLServer2005中是否有方法只存储日期 使用smalldatetime(4字节存储)并添加检查约束。不要使用字符或类似的字符
基于这个问题,检查约束将是这样的
并非如此-SQL Server 2008引入了日期(仅限日期)数据类型。SQL Server 2008 Express也将是免费的…@marc_是的,我知道这一点,但我想暂时使用SqlServ
我在这里找到了许多关于如何执行此操作的其他帖子,但不确定如何编写初始select语句,该语句检查系统名称和update语句,因为其中涉及一个临时表。我对使用存储过程非常生疏,更不用说临时表了,所以我不知所措。据我所知,正在发生的是通过XML提要将数据提供给SP(此处未显示该步骤)。然后,xml提要中的数据存储在临时表中。现在写入SP时,SP会将临时表中的数据插入到实际表中。我需要添加一个步骤,检查系统名称是否存在,如果存在,更新它,如果不存在,然后插入它。我需要有关IF EXISTS selec
我在SQL Server Reporting Services中有一个自定义报表。
此报告有几个参数,例如:请求的日期开始、请求的数据发送到、捐赠者
我想设置一个预定的电子邮件。
但是,我希望将请求的日期开始值指定为=当前日期时间-1个月
并将请求的日期结束值分配给=当前日期时间
有什么建议吗
这很简单,请看我的回答:
最后,您必须将这些计算创建为数据集,然后在订阅本身中使用“使用默认值”复选框:
编写一个存储过程,并从存储过程中的sql获取以下内容:
select @FileName as
我意识到这是一个相当常见的问题,但在经历了本网站和其他网站列出的类似问题后,我至今无法纠正它
无论如何,我在一个论坛上有一个基于PHP的应用程序,它允许用户互相给对方打分,我相信你们都知道这些简单的设置是如何工作的,所以我不会详细讨论它。问题是,我相信这段代码最初是为MySQL编写的,虽然95%的代码已经转换为MS SQL,现在可以在MS SQL中使用,但在SQL 2005中仍然有一些查询看起来很糟糕,我怀疑这是由于连接等中的轻微语法不一致造成的。这段代码让我陷入了困境。
示例查询如下所示:
S
我只是想知道如何根据表A列值从表B中选择值;这个想法很简单,但我有点困惑
代码像一个
DECLARE @A TABLE
(
id INT NOT NULL,
name VARCHAR(50)
);
INSERT @A SELECT id,name FROM table1 WHERE id>10
DECLARE @B TABLE
(
address VARCHAR(255),
city VARCHAR(128)
);
INSERT @b SELECT address,ci
如何更改列的默认绑定
这项工作:
ALTER TABLE [t].[t150806].[tblTest]
ADD CONSTRAINT test_constraint DEFAULT '10' FOR test
但是因为我之前已经设置了默认绑定,所以我希望以这种方式继续。那么如何设置默认绑定呢`
谢谢
Barry您不能更改默认约束-您需要删除旧约束:
ALTER TABLE [BI011mylovetoys].[mylovetoys150806].[tblTest]
DROP CONST
当结果的列数可变时,如何将SP的输出插入表中
此SP创建一个列数可能不同的表。我需要将结果放入临时表中,以便使用它查询报告。如何创建可以处理SP输出的表
DECLARE @cols AS VARCHAR(MAX),
@query AS VARCHAR(MAX);
SET @cols = STUFF((SELECT distinct ',' + QUOTENAME(c.question)
FROM temp_SURVEY_DATA c
FOR XML
我需要将数据库(包括数据)从sql server 2008 R2复制到另一台sql server(sql express 2005)。我注意到备份无法从较新版本备份到较早版本。我应该采取的最佳方法是什么?因为您要从较高版本复制到较低版本,所以不可能一次完成
最好的方法是使用SSIS传输带有数据的表。正如我使用generate脚本尝试的那样。我只是希望它不会因为快速版本而失败。什么是SSIS?SQL Server集成服务
SQL专家
我有一个表结构如下
Id Name IdPartner
Id1 name1
Id2 Name2 Id1
Id3 name3 Id1
Id4 name4 Id2
Id5 name5 Id3
我需要编写一个查询,该查询将递归地在表中循环以查找合作伙伴
也就是说,给定一个Id,比如说Id1,我需要提取Id1作为合作伙伴列出的所有名称
表中的数据如下所示
TimeIn TimeOut
-------------------------------------
6/1/2010 09:00:00 Null
6/2/2010 09:00:00 6/2/2010 16:45:00
6/3/2010 10:05:00 Null
6/4/2010 07:30:00 6/4/2010 15:45:00
SQL Server服务无法启动。有关详细信息,请参阅SQL Server联机丛书主题“如何:查看SQL Server 2005安装程序日志文件”和“手动启动SQL Server”
我读到:“暂时不要单击“取消”。从SQL Server 2005 SP3或SP4的安装中复制SQLSERVR.EXE和SQLOS.DLL文件,并将它们放在SQL安装文件夹中,然后单击“重试”
如何查找这些文件
我只是一个用户,对计算机程序了解不多,但需要SQL Server运行程序安装
如何在一个简单的过程中解决这个
你好
我在学习这个教程-
并尝试将我的Android应用程序连接到SQLServer2005。应用程序应该从数据库中获取数据并在模拟器中显示。现在,我遇到了未知错误,当运行应用程序时,它会显示空屏幕和消息“”,并且控制台或LogCat中不会出现错误
下面是我的第一个_activity.java代码:
public class First_activity extends Activity {
// creating the objects
Button EXECUTAR;
EditText V
我有一个数据库,当我们从第三方导入数据时,它用于在主生产数据库之间传输数据
我想在每个表中添加一个标识列
我知道下面的SQL只适用于一个表,如何才能适用于数据库中的所有表
ALTER TABLE dbo.YourTable
ADD Id INT IDENTITY(1,1) NOT NULL
非常感谢您必须一次只处理一张桌子,没有神奇的方法可以同时处理所有桌子
通过检查sys.tables目录视图,可以让SQL Server生成该操作所需的T-SQL语句—假设您要为所有表调用该标识列Id:
SE
我的Sql查询是
select BookingDate from EntBookings
where BookingDate between '01 Jan 2013' and '03 jan 2013'
我想输出这些列
1-jan | 2-Jan | 3-Jan
你的日期格式不对。使用
select case when BookingDate = '2013-01-01' then BookingDate end as '1-jan',
when Boo
我陷入了下面的疑问。这在mySQL上正常工作,但在MSSQL-2005上出现错误。查询的主要目的是基于两个表的多列比较,将数据从一个表复制到另一个表,而不存在重复项
我可以这样做来比较一列的重复,但当我比较多个列的重复时,我就做不到了
这是我的问题
INSERT INTO eBayStockTaking (OrderLineItemID,Qty,SKU,SubscriberID,eBayUserID)
SELECT OrderLineItemID,Qty,SKU,SubscriberID,eB
受到我所看到的各种与模式相关的问题的启发
如果存储过程和表都在同一架构中,则允许我授予对存储过程执行的权限,而无需对我使用的表授予显式权限
如果我们使用单独的模式,那么我必须在不同的模式表上显式地授予XXX。所有权链接示例演示了这一点。这意味着执行存储过程的用户可以直接读/写表
这就像直接访问类中的实例变量,绕过getter/setter,破坏封装
我们还使用行级安全性来限制某人看到的内容,并将其应用到存储过程中
那么,我们如何保持模式分离并防止直接表访问呢
当然,如果您使用ORM或不使用存储过
我需要检测登录名的默认数据库。我应该在SQL Server 2005中查询哪个系统表/视图?您应该能够使用sp_helplogins获取特定登录的此信息。提供了master.sys.syslogins视图。您应该使用视图和列default\u database\u name
我正在使用SQLServer2005作为我的应用程序的后端。我为特定列指定了数据类型varchar(max),但它只存储1000个字符。为什么会这样 它支持varchar(max),可以存储1000多个字符
我想Mathew您已经在insert或update查询中给出了这个表的范围
可能在存储过程或查询中定义了限制。它支持varchar(max),并且可以存储1000个字符以上
我想Mathew您已经在insert或update查询中给出了这个表的范围
可能在存储过程或查询中,您已经定义了限制。
环境:SQL Server 2005、Windows Server 2003
该系统是一个在线预订系统。在其中,您可以创建特别优惠
特价有一定的有效期
我们在数据库中保存客户输入的每个周期,即使该周期是过去的。我们必须保持这些周期
该系统自10年以来就存在,因此数据库中的大部分时间段都已过去
问题是:
选择特别优惠的期限非常长
我选择了没有有效期的特价,所以我必须先选择我的特价,然后选择我的有效期,然后再删除没有任何有效期的特价
你是如何处理这种情况的?在某些情况下,是否有任何内置工具可以忽
我有一个varchar(999)列,我只想在它不为NULL时选择它
有没有一种有效的方法可以检查一行是否有空值,而无需为此列的所有可能值编制索引?嗯,中col不为空的部分可以使用空位图,但这是一种聚集索引扫描
或者,您只需为列编制索引并点击。或者将索引视图与IS NOT NULL筛选器一起使用
不幸的是,直到“SQL Server 2008”才很好地解决了这一问题
我有一个福利登记应用程序,我需要提取给定年份的最新历史记录,并将其与另一给定年份的最新历史记录进行比较,确定哪些字段(如果有)发生了更改
我一直在尝试包括OVER(PARTITION…)子句的多个解决方案(有些在这里找到)。不幸的是,我的SQL(2005)/management studio版本并不欣赏它是一个多么伟大的工具,因为它一验证我的代码就会立即退出
这就是我所拥有的:
SELECT * FROM
(SELECT empID, ssn, fname, minit
在SQLServer2005中,字符串到日期时间的转换有问题
如果在where语句中使用Convertdatetime、x,如下所示:
SELECT ThumbId
FROM [ImageBankSQL].[dbo].[MetaData]
WHERE (DataKey = 'ImagePropertyTagExifDTOrig'
OR DataKey='ImagePropertyTagDateTime')
AND CONVERT(datetime, DataValue, 120)
我有一个存储文件名树状结构的表。此表中当前有800万条记录。我正在研究一种快速查找文件列表的方法,这些文件的名称中嵌入了特定的序列号
FS_NODES
-----------------------------------
NODE_ID bigint PK
ROOT_ID bigint
PARENT_ID bigint
NODE_TYPE tinyint
NODE_NAME n
谁能告诉我创建日志系统(审计跟踪)的最佳解决方案是什么!?
我正在将vb.net与MSSQL 2005一起使用,试试由Paul Nielsen开发的AutoAudit
以下线程将为您提供有关音频跟踪机制的一些提示:
您能否详细说明您正在寻找的日志系统的要求……事实上,我想使用此日志系统来跟踪用户。他们做了什么,谁插入,谁删除,谁更新了数据库。。。
我的数据如下:
year month Amount
2012 4 7443.00
2012 5 7443.00
2012 6 7443.00
2012 7 7443.00
2012 8 7443.00
2012 9 7443.00
2012 10 7443.00
2012 11 7443.00
2012 12 7443.00
2013 1 7443.00
2013 2
访问2010年库存项目数据库(项目、位置、数量等)。
链接的SQL server 2005订单表
我创建了一个Access SQL查询来检索特定订单号的项目列表。这本身运行良好,但当我向Access db添加链接,询问位置和数量时,它只显示1项(最后一项)的结果
我觉得我错过了一些简单的事情。我对access有些了解,但对SQL不太了解,对任何编程语言基本上都是新手
因为我还不能发布照片,所以我将尝试展示返回内容的示例
SQL订单查询
标题订单号、项目号
结果0012377000;00123,
假设查询包含以下内容
set @x = max([column]) from [table]
insert into [table]
select * from [linkedserver].[database].dbo.[table] where [column]>@x
在这里使用OPENQUERY而不是“直接”方法是否有优势
我在SQL Server 2016上运行此程序,数据正在从链接服务器(旧的SQL Server 2005)迁移
它可以工作,我只是想知道使用OPENQUE
1 2 3 4 5 6 ...
下一页 最后一页 共 56 页