标签: sql-server

在sql server 2005中,如何在不丢失任何数据的情况下更改表的"模式"?

我有一个进入"db_owner"模式的表,我需要它在"dbo"模式中.

是否有运行的脚本或命令来切换它?

database sql-server

73
推荐指数
5
解决办法
7万
查看次数

SQL Server中最有效的方法是从日期+时间获取日期?

在MS SQL 2000和2005中,给定日期时间,例如'2008-09-25 12:34:56',获得仅包含'2008-09-25'的日期时间的最有效方法是什么?

这里重复一遍.

sql t-sql sql-server

73
推荐指数
4
解决办法
7万
查看次数

将整数转换为十六进制,将十六进制转换

所以我signal_data在Sybase中有这个查询工作(哪一个是列)但它在Microsoft SQL Server中不起作用:

HEXTOINT(SUBSTRING((INTTOHEX(signal_data)),5,2)) as Signal
Run Code Online (Sandbox Code Playgroud)

我也在Excel(A1包含值)中有它:

=HEX2DEC(LEFT(DEC2HEX(A1),LEN(DEC2HEX(A1))-2))
Run Code Online (Sandbox Code Playgroud)

有谁知道如何在SQL Server中执行此操作?

sql sql-server hex integer

73
推荐指数
7
解决办法
23万
查看次数

有没有办法坚持变量?

有没有办法坚持变量?

Declare @bob as varchar(50);
Set @bob = 'SweetDB'; 
GO
USE @bob  --- see note below
GO
INSERT INTO @bob.[dbo].[ProjectVersion] ([DB_Name], [Script]) VALUES (@bob,'1.2')
Run Code Online (Sandbox Code Playgroud)

请参阅"USE @bob"行的SO问题.

sql sql-server sql-server-2000 sql-server-2008 sql-server-2012

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

禁用事务日志

Oracle具有可以发出的SQL命令,因此不会记录事务.SQL Server 2008有类似的东西吗?

我的场景:我们需要服务器上的Tx日志(Dev,QA,Prod),但也许我们可以在开发者机器上没有它们.

sql-server sql-server-2008

73
推荐指数
3
解决办法
15万
查看次数

如何从SQL Server Windows模式更改为混合模式(SQL Server 2008)?

我已经安装了SQL Server 2008 Express Edition,但是我错误地保留了Windows身份验证模式.

现在我想将其更改为SQL Server混合模式.我怎样才能做到这一点?

sql-server

73
推荐指数
5
解决办法
19万
查看次数

使用INSERT INTO插入多个值(SQL Server 2005)

在SQL Server 2005中,我试图弄清楚为什么我无法在表中插入多个字段.以下查询,插入一条记录,工作正常:

INSERT INTO [MyDB].[dbo].[MyTable]
           ([FieldID]
           ,[Description])
     VALUES
           (1000,N'test')
Run Code Online (Sandbox Code Playgroud)

但是,以下查询(指定多个值)将失败:

INSERT INTO [MyDB].[dbo].[MyTable]
           ([FieldID]
           ,[Description])
     VALUES
           (1000,N'test'),(1001,N'test2')
Run Code Online (Sandbox Code Playgroud)

我收到这条消息:

Msg 102, Level 15, State 1, Line 5
Incorrect syntax near ','.
Run Code Online (Sandbox Code Playgroud)

当我在SQL Sever Management Studio中查找INSERT的帮助时,他们的一个示例显示了我使用的"值"语法(括号中的值组并用逗号分隔).我在SQL Server Management Studio中找到的帮助文档看起来就像是SQL Server 2008,所以也许这就是插入不起作用的原因.无论哪种方式,我都无法弄清楚为什么它不起作用.

sql t-sql sql-server sql-server-2005

73
推荐指数
2
解决办法
18万
查看次数

SQL Server:如何约束表包含单个行?

我想在我的应用程序的配置表中存储一行.我想强制说这个表只能包含一行.

实施单行约束的最简单方法是什么?

sql-server singleton database-design

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

如何在SQL中用随机数填充列?我在每一行都得到相同的价值

UPDATE CattleProds
SET SheepTherapy=(ROUND((RAND()* 10000),0))
WHERE SheepTherapy IS NULL
Run Code Online (Sandbox Code Playgroud)

如果我然后执行SELECT,我会看到我的随机数在每一行都是相同的.任何想法如何生成唯一的随机数?

sql-server

73
推荐指数
3
解决办法
9万
查看次数

Dapper.NET和存储过程具有多个结果集

有没有办法使用Dapper.NET与返回多个结果集的存储过程?

在我的例子中,第一个结果集是一行,只有一列; 如果是,0则调用成功,第二个结果集将包含实际的行/列数据.(如果它不为零,则会发生错误,并且不会提供第二个结果集)

有没有机会用Dapper.NET处理这个?到目前为止,我只回到那个单身0- 但仅此而已.

更新:好的,它工作正常 - 只要结果集没有.2是单个实体:

Dapper.SqlMapper.GridReader reader = 
    _conn.QueryMultiple("sprocname", dynParams, 
    commandType: CommandType.StoredProcedure);

int status = reader.Read<int>().FirstOrDefault();
MyEntityType resultObj = reader.Read<MyEntityType>().FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

现在,我还有另一项要求.

对于第二个结果集,Dapper的多映射(将从SQL Server返回的单行拆分为两个独立的实体)似乎尚未得到支持(至少似乎没有.Read<T>可以处理的重载)多映射).

如何将该行拆分为两个实体?

sql-server stored-procedures multiple-resultsets dapper

73
推荐指数
3
解决办法
5万
查看次数