Tag: sql

在MySQL中插入/更新随机date

我如何使用MySQL在过去2周内随机更新一列? 例如(代码实际上不工作): UPDATE mytable SET col = sysdate() – rand(1, 14);

如何使用SQL for循环将行插入数据库?

我正在使用Postgres,并且我有大量需要被插入到数据库中的行,这些行的差别仅在于递增的整数。 原谅可能是一个愚蠢的问题,但我不是一个数据库大师。 是否有可能直接input一个SQL查询,将使用循环编程插入行? 在我想要做的伪代码中的例子: for i in 1..10000000 LOOP INSERT INTO articles VALUES(i) end loop;

为什么存储过程比查询快

我想写一个简单的单行查询来从数据库中只select一个值。 所以,如果我为这个查询编写存储过程而不是在c#代码中编写简单的select查询,那么我相信这个简单的select查询的存储过程会更快,但为什么呢? 我很困惑与存储过程vs写在我的代码简单的查询? 我很困惑,为什么存储过程比直接写在代码中的简单的查询更快?

通过Management Studio从SQL Server 2012导出到.CSV

我有一个SQL Server 2012数据库,我试图导出到.CSV 。 我的SQL知识是非常基本的,我的问题是,我假设它将在Management Studio中完成,我该怎么做?

将不可为空的列添加到SQL Server中的现有表?

我已经有一个由数据组成的表格。 我需要改变表添加两个不是null的新列。 我怎么做,而不会丢失任何现有的数据? 这是我尝试的(通过右键单击表并selectdevise): 添加了新的列“EmpFlag”(位,空),“CreatedDate”(date时间,空) 更新表中的“EmpFlag”列,以获得一些有效的值。 (只想在一个领域工作,所以我没有更新'CreatedDate'字段) 现在右键单击表,devise,并使其不为空。 当我试图保存时,出现这个错误信息: 保存更改是不允许的。 您所做的更改需要删除并重新创build以下表格 。

数据库与文件系统中的图像

我们有一个项目即将到来,我们将build立一个完整的后端CMS系统,将为我们的整个外联网和内联网提供一个包。 我一直在试图find答案的问题是哪个更好:将图像存储在数据库(SQL Server 2005)中,以便我们可以具有完整性,单个复制计划等,或存储在文件系统上? 我们遇到的一个问题是,我们有多个服务器负载均衡,需要始终具有相同的数据。 到目前为止,我们有SQL复制照顾,但文件复制似乎有点困难。 另一个问题是,我们希望同一图像有多个分辨率,我们不确定在文件系统上创build和存储每个版本是最好的,或者可以根据请求dynamic地提取和创build分辨率图像。 我们关心的是以下几点: 数据的完整性 数据复制 多个决议 数据库与文件系统的速度 数据库与文件系统的开销负载 数据pipe理和备份 有没有人有类似的情况或有什么build议? 先谢谢您的帮助!

将数据从SQL Server Express导出为CSV(需要引用和转义)

我花了2天时间尝试从SQL Server安装中导出包含用户input数据的大型文本字段的75,000行表。 这些数据包含每一个简单的ascii字符,制表符和换行符。 我需要导出每个字段被引用的CSV,并且引用列中的引号已正确转义(“”)。 以下是我迄今为止所尝试的: – 从Management Studio中右键单击数据库并导出到Excel:由于字段太长而失败。 – 将数据从Management Studio导出到带有文本分隔符和逗号分隔的平面文件 – 完全无用,在字段中不会引用引号,从而使文件完全模糊不清 – 从命令行使用BCP – 也不支持引用字段。 我需要用FasterCSV ruby​​库导入。 它不允许引号分隔符是一个非标准的ASCII字符或多个字符。 它也不允许\ n或\ r在未加引号的列中。 任何帮助是极大的赞赏。

在SQL Server中COUNT(*)是一个常量操作吗? 如果没有,为什么不呢?

我正在另一篇文章中读到这个问题,这个问题是由别人提出的。 在阅读讨论之前,我一直认为SQL Server(和其他DBMS)为元数据中每个表的全局行计数,但讨论似乎并不是这样。 为什么? 如果是O(1), Count(*) (没有任何过滤)是一个常见的操作将获得巨大的提升。 即使不考虑COUNT(*) ,表中的总行数也是如此基本的信息。 为什么他们不记得呢? 此外,为什么我们需要“加载”整个行(如链接后的post所示)来计算它们呢? 不应该索引或PK等足以数它们?

在postgresql中打印一个variables的值

我有一个postgresql函数 CREATE OR REPLACE FUNCTION fixMissingFiles() RETURNS VOID AS $$ DECLARE deletedContactId integer; BEGIN SELECT INTO deletedContactId contact_id FROM myContacts WHERE id=206351; — print the value of deletedContactId variable to the console END; $$ LANGUAGE plpgsql; 如何将deletedContactId的值打印到控制台?

截断/清除Sql Server 2008中的表variables

是否有可能在sql server 2008中截断或清除表variables? Declare @tableVariable table ( id int, value varchar(20) ) while @start<=@stop begin insert into @tableVariable(id,value) select id , value from xTable where id=@start –Use @tableVariable –@tableVariable should be flushed out of — old values before inserting new values set @start = @start + 1 end