标签: sql-server

如何将db模式更改为dbo

我从旧的SQL Server(2000)导入了一堆表到我的2008数据库.所有导入的表都以我的用户名为前缀,例如:jonathan.MovieData.在表中,propertiesjonathan列为db模式.当我编写存储过程时,我现在必须包含jonathan.在所有表名称之前,这是令人困惑的.

如何将所有表格更改为dbo而不是jonathan?

目前的结果: jonathan.MovieData

期望的结果: dbo.MovieData

sql database sql-server schema sql-server-2008

113
推荐指数
6
解决办法
20万
查看次数

How much size "Null" value takes in SQL Server

I have a large table with say 10 columns. 4 of them remains null most of the times. I have a query that does null value takes any size or no size in bytes. I read few articles some of them are saying :

http://www.sql-server-citation.com/2009/12/common-mistakes-in-sql-server-part-4.html

There is a misconception that if we have the NULL values in a table it doesn't occupy storage space. The fact is, a NULL value occupies space – 2 bytes

SQL:使用NULL值与默认值

NULL在数据库中的值是一个系统值占用一个字节存储的并指示值不存在,而不是一个空间或零或任何其他的默认值.

你可以指导我关于空值的大小.

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

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

多个表的外键

我的数据库中有3个相关表.

CREATE TABLE dbo.Group
(
    ID int NOT NULL,
    Name varchar(50) NOT NULL
)  

CREATE TABLE dbo.User
(
    ID int NOT NULL,
    Name varchar(50) NOT NULL
)

CREATE TABLE dbo.Ticket
(
    ID int NOT NULL,
    Owner int NOT NULL,
    Subject varchar(50) NULL
)
Run Code Online (Sandbox Code Playgroud)

用户属于多个组.这是通过多对多关系完成的,但在这种情况下无关紧要.票证可以由组或用户通过dbo.Ticket.Owner字段拥有.

什么是最正确的方式描述故障单和可选的用户或组之间的这种关系?

我想我应该在票证表中添加一个标志,说明拥有它的类型.

sql-server relational-database

113
推荐指数
3
解决办法
10万
查看次数

SQL Output子句是否可以返回未插入的列?

我对我的数据库做了一些修改,我需要将旧数据迁移到新表.为此,我需要填充表(ReportOptions)从原始表(练习)中获取数据,并填写第二个中间表(PracticeReportOption).

ReportOption (ReportOptionId int PK, field1, field2...)
Practice (PracticeId int PK, field1, field2...)
PracticeReportOption (PracticeReportOptionId int PK, PracticeId int FK, ReportOptionId int FK, field1, field2...)
Run Code Online (Sandbox Code Playgroud)

我提出了一个查询来获取从Practice转到ReportOptions所需的所有数据,但是我无法填写中间表

--Auxiliary tables
DECLARE @ReportOption TABLE (PracticeId int /*This field is not on the actual ReportOption table*/, field1, field2...)
DECLARE @PracticeReportOption TABLE (PracticeId int, ReportOptionId int, field1, field2)

--First I get all the data I need to move
INSERT INTO @ReportOption
SELECT P.practiceId, field1, field2...
  FROM Practice P

--I insert it into the new table, …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

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

如何在SQL中使用NULL或空字符串

我想知道如何WHERE在SQL Server 的子句中同时使用NULL和空字符串.我需要查找具有空值或空字符串的记录.谢谢.

sql sql-server null where

113
推荐指数
7
解决办法
50万
查看次数

如何捕获SQLServer超时异常

我需要专门捕获SQL服务器超时异常,以便可以不同方式处理它们.我知道我可以捕获SqlException,然后检查消息字符串是否包含"超时",但是想知道是否有更好的方法来做到这一点?

try
{
    //some code
}
catch (SqlException ex)
{

    if (ex.Message.Contains("Timeout"))
    {
         //handle timeout
    }
    else
    {
         throw;
    }
}
Run Code Online (Sandbox Code Playgroud)

.net c# sql-server error-handling

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

SQL Server相当于Oracle的CREATE OR REPLACE VIEW

在Oracle中,我可以使用单个语句重新创建视图,如下所示:

CREATE OR REPLACE VIEW MY_VIEW AS
SELECT SOME_FIELD
FROM SOME_TABLE
WHERE SOME_CONDITIONS
Run Code Online (Sandbox Code Playgroud)

正如语法所暗示的那样,这将删除旧视图并使用我给出的任何定义重新创建它.

MSSQL(SQL Server 2005或更高版本)中是否有相同的功能可以执行相同的操作?

sql-server

112
推荐指数
6
解决办法
13万
查看次数

如何在SQL Server Management Studio中快速编辑表中的值?

除了来自对象资源管理器的上下文菜单 - >"编辑前200行",是否有一种快速方法可以在编辑模式下打开表格,我可以快速修改单元格的值?

我需要能够翻过前200行.而且我不想为我需要做的每一个小调整编写"插入"脚本...我不明白为什么SMS不提供快速访问分页表编辑器(如Navicat).

sql sql-server ssms

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

SQL Server IN与EXISTS性能

我很好奇以下哪一项会更有效率?
我一直对使用有点谨慎,IN因为我相信SQL Server会将结果集转化为一个大的IF声明.对于大的结果集,这可能导致性能不佳.对于小结果集,我不确定是否更可取.对于大型结果集,EXISTS效率会不会更高?

WHERE EXISTS (SELECT * FROM Base WHERE bx.BoxID = Base.BoxID AND [Rank] = 2)
Run Code Online (Sandbox Code Playgroud)

WHERE bx.BoxID IN (SELECT BoxID FROM Base WHERE [Rank = 2])
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2005 exists query-performance sql-in

112
推荐指数
5
解决办法
13万
查看次数

运行目录中的所有SQL文件

我有一些.sql文件,我必须运行这些文件才能在SQL Server 2005数据库上应用其他开发人员所做的更改.文件根据以下模式命名:

0001 - abc.sql
0002 - abcef.sql
0003 - abc.sql
...
Run Code Online (Sandbox Code Playgroud)

有没有办法一次性运行所有这些?

sql sql-server batch-processing

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