愚蠢的问题,我知道......让我先做一些基础工作.
我已经成功创建了一个由数百个表,存储过程,索引等组成的数据库项目.构成我们的生产数据库.
我已成功将解决方案添加到源代码管理(TFS).
我必须说,我已经对一些对象进行了更改(作为测试)并生成了部署脚本,整个系统非常令人印象深刻.但看起来VS 2010的实力,从数据库的角度来看是部署,而不一定是开发.
我对使用Visual Studio进行数据库/ TSQL开发所涉及的日常工作流程感到困惑.假设我需要向表中添加几列,并修改相关的存储过程以返回/更新这些列的数据.
虽然很容易修改我的数据库模型中的所有脚本,但我希望能够将它们与开发数据库隔离开来,我可以在那里进行一些测试......但是如果没有更新proc那就简单了存在而不手动将脚本更改为ALTER(或在CREATE之前添加DROP代码).必须这样做一两次是没有问题的,但在真正的开发环境中,我们整天都这样做.
也许答案是执行频繁部署到开发服务器,例如我调试并对proc进行更改?相当多的开销; 我可以在几秒钟内手动执行必要的脚本,构建和部署需要几分钟.另外,如果我们三个人正在为dev DB部署不同的更改,我们是否不会覆盖彼此的修改?
很抱歉这么长,但我不禁想到我在这里错过了一些简单的东西.
是否有任何书籍/教程/网络研讨会展示了这种实际开发方法?
我在Visual Studio中进行PHP开发,我的解决方案包含PHP,SSRS和SQL Server(SSDT)的项目.我正在使用TFS进行版本控制.所以我的开发环境中有很多可能"出错".
我正在经历间歇性的挂起,通常约5分钟一个片段.Visual Studio为我提供了等待光标,如果我在VS中的任何地方单击,则窗口会变暗.然后我只需要等待它.有时我可以结束devenv.exe任务,有时则需要几分钟才能终止任务.如果我感到耐心,我只是等待并最终(大约5分钟)VS恢复生机.即使我终止了这个过程,我也从未经历过数据丢失,源代码控制等问题.
当我保存时,它有时会发生.有时当我办理登机手续时.有时当我退房.有时当我建立.我一直无法辨别出任何形式的行为.
我的所有工作站资源都很好 - 没有RAM或i/o或网络或CPU问题.
我该怎么做才能解决这个问题?我可以在某种日志记录模式下运行VS,这样我就可以确定在这些锁定期间花了这么长时间吗?
我在NetBeans 6.8中进行PHP开发,并希望能够使用按键在窗口布局之间切换.
据我所知,IDE提供了不同的"窗口组",具体取决于我是编辑还是调试,但我正在寻找自定义控件.
例如,我想有一个最大编辑器视图,其中编辑器占据了大部分屏幕空间...然后按Ctrl-Alt-2并有第二个窗口排列显示项目文件层次窗口出现在编辑器的左侧...然后按Ctrl-Alt-3并将变量/ watches/search结果显示在编辑器下方...然后按Ctrl-Alt-1并再次显示max-editor-view.
无论如何,这样的事情.可能吗?
我即将开始一些移动开发项目,但我先做一些功课.我的主要目标是部署到Android和iOS,但后者出现了一些问题,因为我无法访问(也没有兴趣获得)Mac.
Phonegap提供云服务,您可以上传移动开发项目,他们将为您进行构建 - 无需Mac.来自Phonegap Build FAQ:
只需将您的网络资产 - 一个包含HTML,CSS和JavaScript的ZIP文件或一个index.html文件 - 上传到PhoneGap Build,将我们指向您的Git或SVN存储库,或者让我们设置一个您可以推送的git远程端点至.然后我们将为您进行编译和包装.几分钟后,您将收到所有移动平台的下载URL.
我倾向于Appcelerator的开发和本机UI功能,但由于我没有Mac,我是否有希望使用类似于PhoneGap的Build服务的东西使用Titanium进行iOS开发?
我在SO上看到了几个响应,其中TSQL语句使用XML数据类型的.value或.exist方法(此处和此处)对XML数据进行过滤。尽管我不熟悉这些方法的构造/语法,但我有一个更深的问题。
我试图查询一些缓存的执行计划数据,并在数据中搜索特定索引的引用,问题是我不知道XML的位置。现在,我将XML转换为NVARCHAR并仅使用LIKE(请参阅查询的最后一行):
DECLARE @IndexName NVARCHAR(100) = 'MyIndex'
SELECT OBJECT_NAME(objectid) AS procname, usecounts, query_plan
FROM sys.dm_exec_cached_plans cp
CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) qp
WHERE objtype = 'Proc'
AND CAST(query_plan AS NVARCHAR(MAX)) LIKE '%' + @IndexName + '%'
Run Code Online (Sandbox Code Playgroud)
这样行得通,但是我得到了多余的结果。最终,我想获得索引查找和扫描的结果,但是现在我还看到了行,其中索引被修改了(例如,针对常规表更新的执行计划,因为索引也在被更新)。
这是一些简化的示例XML:
<RelOp NodeId="13" PhysicalOp="Index Seek" LogicalOp="Index Seek">
<OutputList>
<ColumnReference Database="[MyDB]" Schema="[dbo]" Table="[Employees]" Column="EmployeeID" />
</OutputList>
<IndexScan Ordered="1" ScanDirection="FORWARD">
<DefinedValues>
<DefinedValue>
<ColumnReference Database="[MyDB]" Table="[Employees]" Column="EmployeeID" />
</DefinedValue>
</DefinedValues>
<Object Database="[MyDB]" Schema="[dbo]" Table="[Employees]" Index="[MyIndex]" /> …Run Code Online (Sandbox Code Playgroud)