我对以下 WHILE EXISTS 循环有疑问。你能考虑一下它无限循环的原因以及它为什么不更新值的原因吗?
declare @part varchar(20)
while exists ((select top 1 * from part1 p where isnull(brojRacuna,'')=''))
begin
set @part=''
set @part=(select top 1 partija from part1 p where isnull(brojRacuna,'')='')
begin tran
update part1
set BrojRacuna= (select dbo.dev_brojracuna (@part))
where partija like @part
print @part
commit
end
Run Code Online (Sandbox Code Playgroud)
编辑 1:因为我第一时间没有找到解决方案,所以我以这种方式创建了游标并更新了数据。之后我发现剩下的几行没有更新,因为函数有数据问题并且无法更新该行的值。在那种情况下,字段一直是空的,循环变得无穷无尽。
我们在TFS2010上遇到了文件Merge的问题.到目前为止,我们将文件从一个分支合并到另一个分支没有问题(右键单击文件 - >合并 - >选择目标分支和合并文件).最初,我们在Develop分支添加了新文件,之后在Main分支添加了相同的文件.经过一段时间后,我们在Develop分支中的代码发生了变化,当试图与Main分支合并时,看不到Target(Main)分支.关于这种情况,我有两个问题:
这是在TFS上"上传"新文件的好方法.在两个分支上单独添加文件或者有一些更好的做法,我们可以将新文件添加到Develop分支,之后在Main处复制该文件?
在合并操作期间"隐藏"目标分支的原因是什么?
当试图解决这个问题时,我发现一些对其他人有用的文章,但在我的情况下没有解决问题:
TnX提前!
维迪奇
在新工作站安装Delphi 6后,我发出了断点问题.在调试模式下,环境不会触发断点,就像它们根本没有放置一样...
你有过类似的情况吗?我想原因是一些设置,但我找不到哪一个......
TnX提前!
维迪奇
我想考虑一种语法改进.
我怎么能写得更好:
IF condition1
IF condition2
{ do something }
ELSE
{ message1 }
ELSE
{ message1 }
Run Code Online (Sandbox Code Playgroud)
有两个IF语句不能在一个语句中连接,但在两个ELSE部分中需要是相同的代码(在本例中为message1).
如何写得更好?我不想两次编写相同的代码(在ELSE部分中).
TnX提前!
维迪奇
我们有使用4个文件制作标签的情况(假设所有项目都包含10个文件,因此另外6个文件不会放在我们的新标签中).
何时执行操作获取特定版本和版本类型放置标签,然后选择我们的新标签,本地文件夹中未包含在新标签中的所有文件(在我们的示例中,另外6个文件)将被删除!这是非常奇怪的情况,所以你能解释一下我希望获得在新标签中标记的特定版本文件的场景,但保留所有其他文件的现有版本并将它们保存在本地文件夹中,所以我只想更新文件在我的新标签中,并没有对lablel中没有的文件做任何事情???
我想在TFS中有一些设置可能会阻止删除这些文件!
TnX提前!
维迪奇
您对此编程实践有何看法: - 我需要在第一个表单中执行一个事务,然后强制执行另一个表单中的某些更新(对于另一个表单中显示的每个项目).即就像显示表单并单击某个按钮一样.因为从第二种形式执行这些功能是强制性的,所以我想在没有显示第二种形式的情况下这样做.这是一个很好的编程实践还是你有其他建议吗?
另外,仅仅在ShowModal之前为第二个表单设置属性> Visible:= False还是我需要做一些其他操作?
目前,我们正在用Delphi编写的6因为,在这些项目中使用(成分也写在Delphi 6)特定组件的情侣项目不容易将其转换在新的版本.
由于我更喜欢.NET开发,而我们的新产品是用.NET开发的,我想使用这些技术开发新的功能.C#将是编程语言.
我的问题是:如何将C#开发的新功能与Delphi中的当前代码集成?这是一个好主意,可能会出现什么问题?如果有人有类似的经历,那么就会听到优点和缺点.
我听说集成了用C#开发.dll并从Delphi代码中使用它.
TnX提前!
维迪奇
我有一个关于SQL Server优化的一般问题:如何减少存储过程中的读取次数?
我对以下良好实践感兴趣: - 在物理表和临时表中创建索引 - 使用临时表而不是在程序中使用相同的表几次 - 在DML之前使用DDL - 在存储过程开始时设置NOCOUNT ON - ...
我们遇到的问题是由于存储过程引起的大量读取而使用的磁盘空间,我需要对其进行优化.
"最昂贵"的存储过程的一部分是:
create table #stavke
(
Id_Br int identity(1, 1), IDStavke int,
HeaderID int, Currency varchar(3), GLAcct varchar(20), id varchar(20), Trnuid varchar(60),
ReferenceID varchar(20), DocumentID varchar(20),
DtAvail varchar(10), DtBooking varchar(10), DatePosted varchar(10),
Amount money, AmountLcl money,
Description varchar(250), Type varchar(10), DP int )
insert into #stavke
(
IDStavke, HeaderID, GLAcct, Currency, id , Trnuid ,
ReferenceID, DocumentID ,
DtAvail , DtBooking , DatePosted,
Amount , AmountLcl …Run Code Online (Sandbox Code Playgroud) delphi ×3
delphi-6 ×2
sql ×2
sql-server ×2
t-sql ×2
tfs ×2
tfs2010 ×2
.net ×1
algorithm ×1
breakpoints ×1
c# ×1
if-statement ×1
integration ×1
loops ×1
merge ×1
settings ×1
syntax ×1
while-loop ×1