Sql 使用After子句添加计算列
我正在尝试在指定列之后创建计算列 但是SQL为下面的查询提供了语法错误。请帮助我使用正确的语法/方法Sql 使用After子句添加计算列,sql,sql-server-2008,Sql,Sql Server 2008,我正在尝试在指定列之后创建计算列 但是SQL为下面的查询提供了语法错误。请帮助我使用正确的语法/方法 ALTER TABLE service_ServiceClass ADD LichenClassName AS ([dbo].[UfnGetServiceClassName]([Id])) AFTER Description sql server语句中没有after子句。 表中列的顺序也是行的顺序,顺便说一句,从用户的角度来看,这是完全不重要的。 从服务器的角度来看,这很重要,因为在使
ALTER TABLE service_ServiceClass
ADD LichenClassName AS ([dbo].[UfnGetServiceClassName]([Id])) AFTER Description
sql server语句中没有after子句。
表中列的顺序也是行的顺序,顺便说一句,从用户的角度来看,这是完全不重要的。
从服务器的角度来看,这很重要,因为在使用聚集索引时,这可能会影响性能
列的顺序唯一重要的时候是使用select*…,但无论如何都不应该使用它。始终直接指定列名。sql server语句中没有after子句。
表中列的顺序也是行的顺序,顺便说一句,从用户的角度来看,这是完全不重要的。
从服务器的角度来看,这很重要,因为在使用聚集索引时,这可能会影响性能
列的顺序唯一重要的时候是使用select*…,但无论如何都不应该使用它。始终直接指定列名。您会收到一个错误,因为AFTER是MySQL语法。 目前在SQL Server中没有直接的方法来更改列顺序
在MS SQL Server Management Studio中,您必须使用SSMS表设计器右键单击yourTable->Design来排列列,这样可以生成一个脚本,删除并重新创建表。您会收到一个错误,因为AFTER是MySQL语法。 目前在SQL Server中没有直接的方法来更改列顺序
在MS SQL Server Management Studio中,您必须使用SSMS表格设计器右键单击表格->设计来排列列,然后生成一个脚本来删除并重新创建表格。这在SQL Server中是不可能的。第条不可用。我想你可以在MySQL中实现,但在SQL Server中是不可能的。第条不可用。我想你可以在MySQL中实现,行和列的顺序并不是无关紧要的。聚集索引控制行的顺序,有时对性能很重要。如果列类型具有对齐首选项,则列的顺序也很重要-在SQL Server中无法很好地控制它,但它可能很重要。@GordonLinoff谢谢,我已经编辑了我的答案。我希望现在更准确。行和列的顺序不是无关紧要的。聚集索引控制行的顺序,有时对性能很重要。如果列类型具有对齐首选项,则列的顺序也很重要-在SQL Server中无法很好地控制它,但它可能很重要。@GordonLinoff谢谢,我已经编辑了我的答案。我希望现在更准确。为什么要删除并重新创建表?@DanBracuk-因为SQL Server无法重新排列表中的列。因此,如果您坚持更改列顺序,唯一的方法是使用更改的布局重新创建表。为什么您必须删除并重新创建表?@DanBracuk-因为SQL Server无法在表中重新排列列。因此,如果您坚持要更改列顺序,实现这一点的唯一方法是使用更改的布局重新创建表。