为了获得类似于mysql ENUM类型的列,我编写了一个sql查询,如下所示
ALTER TABLE [DbName].[dbo].[MediaContent]
ADD MediaType nvarchar(50)
check(MediaType in ('audio','video','song','other'))
Run Code Online (Sandbox Code Playgroud)
这如愿(用于测试):但现在我想删除此列但没有成功。似乎没有办法直接删除有约束的列。我该如何解决这个问题?我想删除此列并创建另一列。
这是我在删除时收到的错误消息
The object 'CK__MediaCont__Media__14270015' is dependent on column 'MediaType'.
ALTER TABLE DROP COLUMN MediaType failed
because one or more objects access this
column. (Microsoft SQL Server, Error: 5074)
Run Code Online (Sandbox Code Playgroud) datetime2 的默认值是多少?
编辑:抱歉,也许我解释错了,我尝试插入 getDate() 并且它保存了我这个值。
我需要知道我的 ssms 的该字段(红色字段)的值是多少

以下是我的查询:
CREATE TABLE #TEMP(CID INT,PID INT,STAT VARCHAR(20),TIN DATETIME, TOUT DATETIME)
INSERT INTO #TEMP(CID,STAT,PID,TIN,TOUT)
SELECT DISTINCT CID,STST,PID,TIN,TOUT
FROM CVTBL
WHERE STAT = 'YES'
AND PID = '12'
ORDER BY CID DESC;
select * from #temp
drop table #temp
Run Code Online (Sandbox Code Playgroud)
这是一个非常直接的查询。但是,每次当我从 #temp 运行 select * 时,它都会产生不同的结果集,但总行数是相同的。这是如何运作的?
我正在尝试通过将Windows 身份验证与 Microsoft SQL Server Management Studio 结合使用来连接到 SQL Server。我在运行 SQL Server 的计算机上创建了多个用户。
登录对话框不允许选择其他用户,但当前 Windows 会话登录的用户除外。
如何以其他用户身份登录 Management Studio?
我有一个 SQL Server 实例,想要从对象资源管理器的可用服务器中显示的列表中删除该实例。我该怎么做呢?
我正在连接三个数据库值名字、中间名、姓氏。这是查询 -
Select ISNULL(t.FirstName,'')+' '+ISNULL(t.MiddleName,'')+' '+ ISNULL(t.LastName,'') as [UserName],Email from table1 t
Run Code Online (Sandbox Code Playgroud)
我得到一些中间名的空值。这就是为什么我在连接后得到额外的空格。
名字 姓氏 -- 在一个位置添加两个空格
我希望如果中间名为空,则结果中将只存在一个空格。如果它不为空,则名字、中间名和姓氏之间有一个空格。我尝试了一些方法来避免这种情况,但没有任何效果。
我即将研究如何连接来自多个不同数据库的表。所以我引用特定表的方式是遵循这种格式db_server_name.db_name.schema_name.table_name。因此,在搜索如何使用此命令获取服务器名称之后:
SELECT @@SERVERNAME
Run Code Online (Sandbox Code Playgroud)
我得到以下服务器名称:
LAPTOP-FV8FREL6\SQLEXPRESS
Run Code Online (Sandbox Code Playgroud)
这也证实了:
所以我做了这个查询:
select v.VendorID, v.VendorName
from LAPTOP-FV8FREL6\SQLEXPRESS.AP.dbo.Vendors v;
Run Code Online (Sandbox Code Playgroud)
但它说
消息 102,级别 15,状态 1,第 6 行“-”附近的语法不正确。
你知道如何得到这个作品吗?
在SSMS我有一个用户X并且有Y,Z和P数据库角色可以,我可以怎样检查角色将被添加到什么用户X?
我试过什么:
在 SSMS 中右键单击数据库 -> 属性 -> 权限,然后查看用户的显式选项卡X。我可以看到权限而不是角色和用户之间的关联。我感兴趣的角色也是如此,我只看到角色的权限。
编辑:关于 GUI 解决方案,我没有可用于用户或角色的属性选项。
在查看 SQL Server Management Studio (SSMS) 时,哪个更好,为什么?在某些情况下我们应该使用一种吗?
我分不清它们之间的区别。