问题列表 - 第6373页

使用PHP将二进制数据插入SQL Server

我在SQL Server 2005数据库中有一个varbinary(MAX)字段.我试图弄清楚如何使用PHP将二进制数据(即图像)插入到该字段中.我正在使用ODBC连接到SQL Server数据库.我已经看到了许多解释这个用于MySql数据库的例子,但是我无法让它与SQL Server一起使用.谢谢.

php sql-server odbc

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

更改列:null为非null

我有一个表有几个可以为空的整数列.由于多种原因,这是不可取的,所以我希望将所有空值更新为0,然后将这些列设置为NOT NULL.除了将空值更改为0,必须保留数据.

我正在寻找特定的SQL语法来将列(调用它ColumnA)改为" not null".假设数据已更新为不包含空值.

使用SQL Server 2000.

t-sql sql-server null alter-table alter-column

1177
推荐指数
8
解决办法
136万
查看次数

通过javascript改变隐藏字段不会持续回发

我有一个带有隐藏字段的Web用户控件.当javascript事件(单击)出现错误时,我试图在隐藏字段中设置一个值,以便可以在回发时保留该值并记住下一次渲染.该控件是一个可折叠的面板扩展器,它不会导致回发,使用jquery,如果回发发生在页面的其他位置,它会记住它是展开还是折叠.

问题是javascript执行,但实际上并没有更改隐藏字段中的值.如果我使用dom explorer,隐藏的恶魔仍然设置为默认值,然后当我调试时,在下一个回发中隐藏字段仍然设置为默认值.

我也尝试过使用久经考验的getElementById但没有成功.

没有javascript错误发生.

ASCX代码:

<input id="hiddenCurrentState" type="hidden" runat="server" />
Run Code Online (Sandbox Code Playgroud)

代码隐藏:

1    using System;
2    using System.Web;
3    using System.Web.UI;
4    using System.Web.UI.WebControls;
5    using System.Text;
6    
7    public partial class Controls_SubControls_CollapsiblePanelExtender : System.Web.UI.UserControl
8    {
9        public string HeaderControlId { get; set; }
10   
11       public string BodyControlId { get; set; }
12   
13       public string CollapseAllControlId { get; set; }
14   
15       public string ShowAllControlId { get; set; }
16   
17       public CollapsedState DefaultState { get; set; …
Run Code Online (Sandbox Code Playgroud)

javascript asp.net jquery postback

2
推荐指数
1
解决办法
6174
查看次数

ASP.NET主题 - 它们应该被使用吗?

我一直在阅读我的ASP.NET书中的主题,并认为它可以是一个非常方便的解决方案,然后我遇到了一些问题.

  • 主题选取文件夹中的每个CSS文件
  • 如果要使用重置样式(排序很重要),则无法保证导入样式表的顺序
  • 您的母版页不会明确指出正在使用的样式,只有呈现的页面可以告诉您,除非您深入了解web.config
  • 使用主题文件设置Web控件的样式是......好吧......愚蠢?您可以在样式表中执行此操作.粒度控制应该在HTML级别,如果不是?
  • 如何在单个样式表中没有所有样式的情况下指定打印样式表?

我想知道他们是否真的值得使用.有什么好处吗?是否有任何主要网站使用它们?

编辑

只是为了澄清slolife的最后一点.如果我有两个样式表,一个名为print.css,另一个名为main.css,我使用的是ASP.NET主题,那怎么知道print.css是一个打印样式表呢?在常规HTML中,您在标签本身中使用媒体类型(即<link rel= ...>),但主题不会知道这一点,因此它将作为常规样式表包含在内.

asp.net themes

28
推荐指数
2
解决办法
4568
查看次数

如何在zsh中更改提示的颜色(与普通文本不同)?

为了更好地识别命令行上输出的开始和结束,我想更改提示的颜色,以便它与程序输出明显不同.当我使用zsh时,任何人都可以给我一个提示吗?

zsh prompt colors

93
推荐指数
10
解决办法
12万
查看次数

使用XML数据库字段的Linq-to-SQL - 为什么这样做?

一些背景:我有一个数据库,我想使用linq-to-sql通过C#应用程序进行更新.此表中的一列具有XML数据类型.

该表中的每个其他列(不是XML数据类型)都可以完美地更新,但是当我对XML字段进行更改时,程序(看似)正确执行,但是在我之后字段始终保留其原始值跑SubmitChanges().

我浏览了一下互联网,发现Microsoft Connect上的一些帖子诊断出类似的问题,最后在这里偶然发现了解决方案:

要强制XML字段更新,这不会:

XElement tmp = MyLinqObject.XmlField;
MyLinqObject.XmlField = null;
MyLinqObject.XmlField = tmp;
Run Code Online (Sandbox Code Playgroud)

而不是强迫LINQ更新XML列分配克隆对象:

MyLinqObject.XmlField = new XElement (MyLinqObject.XmlField);
Run Code Online (Sandbox Code Playgroud)

我可以确认这似乎确实有效,但我不确定为什么.我唯一的猜测是XmlField属性在堆上有某种唯一标识符,通过制作克隆,你已经为它分配了一个新的唯一标识符.当Linq然后生成查询时,它甚至不会尝试查看该字段是否已更新,因为它有一个新的id,它只是将值写入数据库.但是,我只是在猜测并希望其他人能够更好地了解幕后发生的事情.

编辑:为了解决Jon的帖子,问题的原因(正如在MS Connect网站上解释的那样)是"XML字段不会更新,因为Linq-to-SQL不处理XElement.Changed事件".

对于我的实现,有效的代码最终看起来像这样:

MyXElementProperty.SetElementValue("Author", author);

MyXElementProperty = new XElement(MyXElementProperty);
Run Code Online (Sandbox Code Playgroud)

作为参考(对于发现此问题的任何其他人),以下内容也有效:

MyXElementProperty = new XElement(MyXElementProperty);

MyXElementProperty.SetElementValue("Author", author);
Run Code Online (Sandbox Code Playgroud)

c# xml .net-3.5 linq-to-sql

10
推荐指数
1
解决办法
5626
查看次数

Objective C类定义混乱

我正在通过Cocoa学习Objective-C(而且喜欢它).我正在关注一个教程.这是一个名为Menu的类,界面看起来像这样.

@interface Menu: MenuObject {}
@end

@interface MenuLayer : LayerObject {}
-(void) someMethod:(id)sender
-(void) someOtherMethod:(id)sender
@end
Run Code Online (Sandbox Code Playgroud)

并且实现遵循相同的约定

@implementation Menu
    -(id)init{
        // blah blah blah
    }
@end

@implementation MenuLayer
    // init, someMethod and someOtherMethod stuff here
@end
Run Code Online (Sandbox Code Playgroud)

对我来说,看起来像是在同一个文件中定义和实现了两个独立的对象/类.这样做是否有理由?如果我将.h和.m文件拆分为Menu.h/.m和MenuLayer.h/.m,结果是否相同?还是我误解了一些基本的东西?

cocoa object objective-c

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

SQL Server 2008将VARCHAR(50)转换为Uniqueidentifier

我正在尝试将varchar(50)列转换为uniqueidentifier,但是这个错误一直在弹出,我不知道为什么:

"Msg 8169, Level 16, State 2, Line 1 Conversion failed when converting from a character string to uniqueidentifier."
Run Code Online (Sandbox Code Playgroud)

列中的数据当前是有效的uniqueidentifier.

做我想做的事的正确方法是什么?

谢谢

t-sql sql-server type-conversion uniqueidentifier sql-server-2008

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

SQL Server VS Oracle

我正在学习SQL Server,但对Oracle知之甚少.谁能给我一个公平的比较呢?我已经阅读了有关SQL Server 2000与Oracle 9i的比较,但它有点过时了.SQL Server 2008是否赶上了Oracle 11g/i?

sql-server oracle comparison

37
推荐指数
11
解决办法
8万
查看次数

在MySQL语句中使用datediff

这是我使用datediff工作的SQL语句:

SELECT SUM(b134_nettpay) AS Total, b134_rmcid, b134_recdate 
FROM  B134HREC 
WHERE datediff (dd, '2006-05-05', getdate()) > 90
GROUP BY b134_rmcid, b134_recdate 
ORDER BY b134_recdate DESC, b134_rmcid
Run Code Online (Sandbox Code Playgroud)

我需要用MAX替换Hardcoded日期'2006-05-05'(b134_recdate),如下所示:

SELECT SUM(b134_nettpay) AS Total, b134_rmcid, b134_recdate 
FROM  B134HREC 
where datediff (dd, MAX(b134_recdate), getdate()) > 90
GROUP BY b134_rmcid, b134_recdate 
ORDER BY b134_recdate DESC, b134_rmcid
Run Code Online (Sandbox Code Playgroud)

但我收到此错误消息:

聚合可能不会出现在WHERE子句中,除非它位于HAVING子句或选择列表中包含的子查询中,并且要聚合的列是外部引用.

知道如何修复我的SQL语句吗?

mysql sql sql-server datediff

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