标签: sql-server-2008

如何检查SQL Server表中是否存在列?

如果不存在,我需要添加一个特定的列.我有类似以下内容,但它总是返回false:

IF EXISTS(SELECT *
          FROM   INFORMATION_SCHEMA.COLUMNS
          WHERE  TABLE_NAME = 'myTableName'
                 AND COLUMN_NAME = 'myColumnName') 
Run Code Online (Sandbox Code Playgroud)

如何检查SQL Server数据库的表中是否存在列?

t-sql sql-server sql-server-2008 sql-server-2012 sql-server-2016

1792
推荐指数
24
解决办法
115万
查看次数

如何使用INER JOIN与SQL Server删除?

我想INNER JOINSQL Server 2008中删除使用.

但我得到这个错误:

消息156,级别15,状态1,行15
关键字"INNER"附近的语法不正确.

我的代码:

DELETE FROM WorkRecord2 
INNER JOIN Employee ON EmployeeRun=EmployeeNo
WHERE Company = '1' AND Date = '2013-05-06'
Run Code Online (Sandbox Code Playgroud)

sql sql-server inner-join sql-server-2008 sql-delete

1181
推荐指数
15
解决办法
127万
查看次数

Sql Server'不允许保存更改'错误►防止保存需要重新创建表的更改

当我在SQL Server中创建一个表并保存它时,如果我尝试编辑表设计,比如将列类型从int更改为real,我会收到以下错误:

不允许保存更改.您所做的更改需要删除并重新创建下表.您已对无法重新创建或启用的表进行了更改,该选项会阻止保存需要重新创建表的更改.

为什么我要重新创建表?我只想将数据类型更改smallintreal.

该表是空的,直到现在我才使用它.

ssms save menuitem sql-server-2008

713
推荐指数
11
解决办法
45万
查看次数

如何从SQL Server中的表中获取列名?

我想查询表的所有列的名称.我找到了如何做到这一点:

但我需要知道:如何在Microsoft SQL Server(在我的情况下为2008)中完成此操作?

sql t-sql sql-server sql-server-2008

648
推荐指数
19
解决办法
157万
查看次数

删除SQL Server中的记录后重置标识种子

我已将记录插入SQL Server数据库表.该表定义了主键,并且自动增量标识种子设置为"是".这主要是因为在SQL Azure中,每个表都必须定义主键和标识.

但是由于我必须从表中删除一些记录,这些表的标识种子将受到干扰,并且索引列(自动生成的增量为1)将受到干扰.

删除记录后,如何重置标识列,以使列按数字顺序递增?

标识列不用作数据库中任何位置的外键.

sql database sql-server sql-server-2008 azure-sql-database

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

重命名列SQL Server 2008

我正在使用SQL Server 2008和Navicat.我需要使用SQL重命名表中的列.

ALTER TABLE table_name RENAME COLUMN old_name to new_name;
Run Code Online (Sandbox Code Playgroud)

此声明不起作用.

sql sql-server alter-table sql-server-2008

617
推荐指数
8
解决办法
108万
查看次数

如何使用SQL Server 2008打开和关闭IDENTITY_INSERT?

IDENTITY_INSERT设置为OFF 时,为什么我在插入时出错?

如何在SQL Server 2008中正确启用它?是使用SQL Server Management Studio吗?

我运行了这个查询:

SET IDENTITY_INSERT Database. dbo. Baskets ON
Run Code Online (Sandbox Code Playgroud)

然后我在控制台中收到消息,命令已成功完成.但是当我运行应用程序时,它仍然给出了如下所示的错误:

Cannot insert explicit value for identity column in table 'Baskets' when 
IDENTITY_INSERT is set to OFF.
Run Code Online (Sandbox Code Playgroud)

sql sql-server-2008

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

为什么在创建索引时使用INCLUDE子句?

在学习70-433考试的同时,我注意到你可以用以下两种方式之一创建覆盖索引.

CREATE INDEX idx1 ON MyTable (Col1, Col2, Col3)
Run Code Online (Sandbox Code Playgroud)

- 要么 -

CREATE INDEX idx1 ON MyTable (Col1) INCLUDE (Col2, Col3)
Run Code Online (Sandbox Code Playgroud)

INCLUDE条款对我来说是新的.为什么要使用它以及在确定是否使用INCLUDE子句创建覆盖索引时,您会建议使用什么准则?

sql-server indexing sql-server-2005 sql-server-2008

416
推荐指数
7
解决办法
21万
查看次数

选择语句以查找某些字段的重复项

你能帮我用SQL语句来查找多个字段的重复项吗?

例如,在伪代码中:

select count(field1,field2,field3) 
from table 
where the combination of field1, field2, field3 occurs multiple times
Run Code Online (Sandbox Code Playgroud)

并且从上面的陈述中,如果有多次出现,我想选择除第一个以外的每个记录.

sql t-sql sql-server sql-server-2008

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

UPDATE和REPLACE字符串的一部分

我有一个有两列的表,IDValue.我想在第二列中更改某些字符串的一部分.

表格示例:

ID            Value
---------------------------------
1             c:\temp\123\abc\111
2             c:\temp\123\abc\222
3             c:\temp\123\abc\333
4             c:\temp\123\abc\444
Run Code Online (Sandbox Code Playgroud)

现在,123\Value字符串是不必要的.我试着UPDATEREPLACE:

UPDATE dbo.xxx
SET Value = REPLACE(Value, '%123%', '')
WHERE ID <= 4
Run Code Online (Sandbox Code Playgroud)

当我执行脚本时,SQL Server不会报告错误,但它也不会更新任何内容.这是为什么?

sql sql-server string replace sql-server-2008

392
推荐指数
6
解决办法
79万
查看次数