问题列表 - 第63页

多个外键?

我有一张桌子应该跟踪从一个供应商到另一个供应商的产品运输的日期和成本.我们(出色地:p)将运输供应商(FedEx,UPS)和产品处理供应商(Think ... Dunder Mifflin)存储在"供应商"表中.所以,我的SHIPPING_DETAILS表中有三列都引用了VENDOR.no.出于某种原因,MySQL不允许我将所有三个定义为外键.有任何想法吗?

CREATE TABLE SHIPPING_GRID(  
    id INT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'Unique ID for each row',  
    shipping_vendor_no INT(6) NOT NULL COMMENT 'Foreign key to VENDOR.no for the shipping vendor (vendors_type must be 3)',  
    start_vendor_no INT(6) NOT NULL COMMENT 'Foreign key to VENDOR.no for the vendor being shipped from',  
    end_vendor_no INT(6) NOT NULL COMMENT 'Foreign key to the VENDOR.no for the vendor being shipped to',  
    shipment_duration INT(1) DEFAULT 1 COMMENT 'Duration in whole days shipment will take', …
Run Code Online (Sandbox Code Playgroud)

mysql sql foreign-keys

15
推荐指数
1
解决办法
7万
查看次数

如何将逗号分隔列表传递给存储过程?

所以我有一个Sybase存储过程,它接受1个参数,这是一个以逗号分隔的字符串列表,并在IN()子句中使用in运行查询:

CREATE PROCEDURE getSomething @keyList varchar(4096)
AS
SELECT * FROM mytbl WHERE name IN (@keyList)
Run Code Online (Sandbox Code Playgroud)

如何在列表中调用超过1个值的存储过程?到目前为止我已经尝试过了

exec getSomething 'John'         -- works but only 1 value
exec getSomething 'John','Tom'   -- doesn't work - expects two variables
exec getSomething "'John','Tom'" -- doesn't work - doesn't find anything
exec getSomething '"John","Tom"' -- doesn't work - doesn't find anything
exec getSomething '\'John\',\'Tom\'' -- doesn't work - syntax error
Run Code Online (Sandbox Code Playgroud)

编辑:我实际上发现这个页面有很好的参考,可以将数组传递给sproc

sql sybase-ase

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

如何在开发,测试和生产中管理数据库?

我很难找到如何在开发,测试和生产服务器之间管理数据库模式和数据的好例子.

这是我们的设置.每个开发人员都有一个运行我们的app和MySQL数据库的虚拟机.他们的个人沙箱可以随心所欲.目前,开发人员将对SQL模式进行更改,并将数据库转储到他们提交到SVN的文本文件中.

我们希望部署一个始终运行最新提交代码的持续集成开发服务器.如果我们现在这样做,它将从SVN为每个构建重新加载数据库.

我们有一个运行"候选版本"的测试(虚拟)服务器.部署到测试服务器目前是一个非常手动的过程,通常涉及我从SVN加载最新的SQL并进行调整.此外,测试服务器上的数据不一致.您最终得到了最后一个开发人员在沙盒服务器上提供的测试数据.

一切都崩溃的是部署到生产.由于我们无法使用测试数据覆盖实时数据,因此需要手动重新创建所有架构更改.如果有大量的架构更改或转换脚本来操纵数据,这可能会变得非常毛茸茸.

如果问题只是模式,那将是一个更容易解决的问题,但数据库中存在"基础"数据,在开发过程中也会更新,例如安全性和权限表中的元数据.

这是我在实现持续集成和一步构建方面遇到的最大障碍.如何解决呢?


后续问题:如何跟踪数据库版本,以便了解要运行哪些脚本来升级给定的数据库实例?Lance的版本表是否低于标准程序?


感谢您参考塔伦蒂诺.我不是在.NET环境中,但我发现他们的DataBaseChangeMangement维基页面非常有用.特别是这个Powerpoint演示文稿(.ppt)

我将编写一个Python脚本,它*.sql根据数据库中的表检查给定目录中脚本的名称,并根据构成文件名第一部分的整数按顺序运行那些脚本.如果这是一个非常简单的解决方案,我怀疑它会是,那么我会在这里发布.


我有一个工作脚本.如果数据库不存在,它会处理初始化数据库并根据需要运行升级脚本.还有用于擦除现有数据库和从文件导入测试数据的开关.这是大约200行,所以我不会发布它(虽然如果有兴趣我可能会把它放在pastebin上).

mysql svn

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

闭合风格有什么不同

javascript中有两种流行的闭包样式.第一个我叫匿名构造函数:

new function() { 
  var code...
}
Run Code Online (Sandbox Code Playgroud)

内联执行功能:

(function() {
  var code...
})();
Run Code Online (Sandbox Code Playgroud)

这两者之间的行为有何不同?一个人比其他人"更好"吗?

javascript

22
推荐指数
2
解决办法
947
查看次数

实施活动的ICalendar出口应针对哪些客户?

http://en.wikipedia.org/wiki/ICalendar

我正在努力实现事件的导出功能。上面的链接列出了支持ICalendar标准的大量客户,但是我可以看到的“三大客户”是苹果的iCal,微软的Outlook和Google的Gmail。

我开始感觉到每个客户端都实现了“标准”的不同部分,而且我不确定我们应该尝试从应用程序导出哪些信息,以便有人可以将其放在日历上(尤其是复发)。

例如,据我了解,Outlook不支持每小时重复一次。

从功能实现的角度来看,你们中的任何人都可以为“快乐媒介”提供指导吗?

第二个问题,如果我们决定从导出中删除功能(例如每小时递归),因为Outlook不支持该功能,那么我们是否也应在应用程序中支持它?(这是一个通用的事件调度应用程序,没有考虑到特定于业务的用途...因此,我们确实在寻找快乐的媒体)。

icalendar outlook gmail recurrence

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

Java时区搞砸了

我正在运行Tomcat应用程序,我需要显示一些时间值.不幸的是,时间过了一个小时.我调查了一下,发现我的默认TimeZone被设置为:

sun.util.calendar.ZoneInfo[id="GMT-08:00",
                           offset=-28800000,
                           dstSavings=0,
                           useDaylight=false,
                           transitions=0,
                           lastRule=null]
Run Code Online (Sandbox Code Playgroud)

而不是太平洋时区.当我尝试打印默认时区的显示名称时会进一步显示,并显示 "GMT-08:00",这似乎表明它未正确设置为美国太平洋时区.我在Ubuntu Hardy Heron上运行,从Gutsy Gibbon升级.

是否有可以更新的配置文件告诉JRE使用Pacific以及所有相关的夏令时信息?我的机器上的时间显示正确,因此它似乎不是操作系统范围内的错误配置.


好的,这是一个更新.一位同事建议我在我的/ etc/profile中更新JAVA_OPTS以包含"-Duser.timezone = US/Pacific",这有效(我也看到了CATALINA_OPTS,我也更新了).实际上,我只是将更改导出到变量而不是使用新的/ etc/profile(稍后重新启动将获取更改,我将是金色的).

但是,我仍然认为有一个更好的解决方案......应该有一个Java配置,它说明它正在使用什么时区,或者它是如何抓住时区的.如果有人知道这样的设置,那将是非常棒的,但是现在这是一个不错的解决方法.


我使用1.5,这绝对是一个DST问题.如您所见,时区设置为不使用夏令时.我的信念是它通常设置为-8偏移而不是特定的太平洋时区.由于泛型-8偏移没有夏令时信息,它当然不使用它,但问题是,我在哪里告诉Java在启动时使用太平洋时区?我不是在寻找程序化解决方案,它应该是一个配置解决方案.

java linux timezone

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

如何从内容页面访问母版页上的.Net元素?

是否可以从主页中加载的页面访问主页面上的元素ContentPlaceHolder

我有一个ListView,它在主页面的导航区域中列出了人们的姓名.我想在将一个人添加到ListView数据绑定到的表后更新ListView.在ListView重新加载缓存之前,当前不会更新它的值.我们发现只需重新运行ListView.DataBind()会更新listview的内容.我们无法在ListView.DataBind()使用母版页的页面上运行.

下面是我想要做的一个示例,但编译器错误说

"PeopleListView在当前上下文中不存在"

GIS.master - ListView所在的位置

...<asp:ListView ID="PeopleListView"...
Run Code Online (Sandbox Code Playgroud)

GISInput_People.aspx - 使用GIS.master作为主页面

GISInput_People.aspx.cs

AddNewPerson()
{
    // Add person to table
    ....

    // Update Person List
    PeopleListView.DataBind();
    ...
}
Run Code Online (Sandbox Code Playgroud)

在C#.Net中解决此类问题的最佳方法是什么?

.net c#

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

C#循环 - 中断与继续

在C#(随意回答其他语言)循环中,break和continue之间的区别是什么,作为离开循环结构的手段,并进入下一次迭代?

例:

foreach (DataRow row in myTable.Rows)
{
    if (someConditionEvalsToTrue)
    {
        break; //what's the difference between this and continue ?
        //continue;
    }
}
Run Code Online (Sandbox Code Playgroud)

c# loops enumeration

777
推荐指数
12
解决办法
72万
查看次数

如何以编程方式迭代datagrid行?

经过多年的网络开发,我突然回到了WinForms,并且遇到了一些应该很简单的问题.我有一个ArrayList绑定到Windows窗体的业务对象DataGrid.我希望用户能够编辑单元格,完成后,按"保存"按钮.此时,我想迭代所有的行和列 DataGrid以查找任何更改,并将它们保存到数据库中.但我找不到访问DataGrid行的方法.

我还想在编辑时实时验证单个单元格,但我很确定可以完成.(也许没有ArrayListDataSource?)但至于迭代DataGrid,我很惊讶它似乎不可能.

我是否必须将业务对象数据填充到数据表中才能使用数据网格?

winforms

4
推荐指数
1
解决办法
8386
查看次数

.NET 3.5 Redistributable - 200 MB?其他选择?

我最近在工作中使用了很多新的.NET 3.5功能.我正在构建的应用程序旨在分发给可能在其计算机上没有最新版本(或可能是任何版本).NET框架的消费者.

我去下载.NET 3.5可再发行组件包只是为了发现它几乎是200 MB!这对我的应用程序来说是不可接受的,因为它应该是一个快速且无痛的消费者应用程序,可以快速安装并在用户的计算机上保持低调.对于已安装.NET 3.5的用户,到目前为止,我们的二进制下载是即时​​的.这个200 MB的大猩猩将下载量超过四倍.除了这个可再发行的软件包之外,还有什么其他选项可以用来确保框架在机器上,不会让用户退出我们的"快速无痛"工作流程吗?从开始下载到最终安装的目标时间不到两分钟.对于尚未安装.NET的人来说,这是不可能的?

.net redistributable

19
推荐指数
3
解决办法
1万
查看次数