Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 两个查询是否相等?_Sql_Sql Server 2008 - Fatal编程技术网

Sql 两个查询是否相等?

Sql 两个查询是否相等?,sql,sql-server-2008,Sql,Sql Server 2008,我不知道这些疑问是否相等?有什么区别 ALTER TABLE agent1 MODIFY commission DEFAULT .05; ALTER TABLE agent1 add constraint myconst default(commission=0.05) 您的语法可能来自MySQL或Oracle。在SQL Server中,有两种向现有列添加约束的方法: (摘自) 如果不提供约束名称,SQL Server将为您创建一个约束名称 这将列出表x8中的所有约束: SELEC

我不知道这些疑问是否相等?有什么区别

ALTER TABLE agent1   
MODIFY commission DEFAULT .05; 

ALTER TABLE agent1
add constraint myconst default(commission=0.05) 

您的语法可能来自MySQL或Oracle。在SQL Server中,有两种向现有列添加约束的方法:

(摘自)

如果不提供约束名称,SQL Server将为您创建一个约束名称

这将列出表x8中的所有约束:

SELECT OBJECT_NAME(object_id) AS Name,
       SCHEMA_NAME(schema_id) AS  [Schema] ,
       [type_desc] AS [Type]
FROM [sys].[objects]
WHERE [type_desc] LIKE '%CONSTRAINT' AND OBJECT_NAME(parent_object_id)='x8'

Constraint                      Schema      Type
    DF_x8_name                  dbo         DEFAULT_CONSTRAINT
    DF_x8_date1                 dbo         DEFAULT_CONSTRAINT
    DF__x8__x6__117F9D9         dbo         DEFAULT_CONSTRAINT
    DF_PropertySetting_Active   dbo         DEFAULT_CONSTRAINT
    t55                         dbo         CHECK_CONSTRAINT
正如您可以猜到的,每个约束(第三个除外)都是在创建时显式命名的。SQL Server创建了第三个名称

通过发出以下命令,可以使用内置系统视图获取所有检查和/或默认约束的列表:

select * from sys.check_constraints 
 or
select * from sys.default_constraints

它们不能等价,因为第一个语法不正确。修改?你确定你有sql server吗?区别在于,在第二种方法中,你可以指定约束的名称,而不是让sql server为你选择。是的,第二种方法是目前为止首选的方法。
select * from sys.check_constraints 
 or
select * from sys.default_constraints