![]() |
1
78
你不能。列顺序只是我们人类关心的一个“修饰”的事情——对于SQL Server来说,它几乎总是完全不相关的。
当您更改列顺序时,SQL Server Management Studio在后台执行的操作是使用新的
没有用于定义列顺序的SQL命令。 |
![]() |
2
23
您必须按照希望返回的顺序显式列出字段,而不是使用*作为“默认”顺序。 原始查询:
收益率
现在写
|
![]() |
3
17
按照 http://msdn.microsoft.com/en-us/library/aa337556.aspx
嗯,可以,用
也可以使用SQL Server Management Studio
然后单击保存。此方法实际上会删除并重新创建表,因此可能会发生一些错误。 如果 变化跟踪 为数据库和表启用了选项,不应使用此方法。 如果它被禁用,则 阻止保存需要重新创建表的更改 应在“工具”菜单中清除“选项”>“设计器”,否则 “不允许保存更改” 将发生错误。
在创建主键和外键的过程中也可能会出现问题。 如果发生上述任何错误,保存将失败,这将使您得到原始的列顺序。 |
![]() |
4
11
这类似于在查询结果中排序记录的问题。通常没有人喜欢正式正确的答案;-) 接下来是:
|
![]() |
5
9
当然,您可以更改SQL语句中列的顺序。但是,如果要抽象表的物理列顺序,可以创建视图。即
|
![]() |
6
5
您可以通过创建一个新表、复制所有数据、删除旧表,然后重命名新表来替换旧表来完成此操作。 还可以向表中添加新列、逐列复制数据、删除旧列,然后重命名新列以匹配旧列。下面是一个简单的例子: http://sqlfiddle.com/#!3/67af4/1
|
![]() |
7
5
在SQLServer Management Studio中: 工具->选项->设计器->表和数据库设计器
然后:
SQLServerManagementStudio将删除该表并使用数据重新创建它。 |
![]() |
8
1
如果表中有足够的列,则可以尝试此操作。首先创建一个具有首选列顺序的新表。
现在使用DROP命令删除表
现在,将新创建的表重命名为旧表名。
现在选择该表,您可以根据以前的喜好重新排列列。
|
![]() |
9
1
SQL Server在内部生成脚本。它用新的更改创建一个临时表,复制数据并删除当前表,然后从临时表重新创建表插入。我从“生成更改脚本”选项SSMS 2014中找到它。这样的脚本。从 Here: How to change column order in a table using sql query
|
![]() |
10
0
在一天结束的时候,您不能在MS SQL中这样做。我最近使用从查找表中读取的存储过程在执行(应用程序启动)时创建了表。当我创建了一个视图,将它们与之前手动创建的另一个表(相同的模式,带数据)结合在一起时,它失败了——仅仅是因为我对视图使用了“select*union select*”。同时,如果只使用通过存储过程创建的那些,我就成功了。 综上所述:如果有依赖于列顺序的应用程序,那么它的编程确实不好,将来肯定会产生问题。列应该“感觉”到可以在任何地方使用,并且可以用于任何数据处理(插入、更新、选择)。 |
![]() |
11
0
您可以使用SQL查询来更改它。下面是用于更改列顺序的SQL查询。
|
![]() |
12
0
您可以通过以下步骤实现:
|
![]() |
13
0
如果要重新排序的列是最近创建的,并且是空的,那么可以删除这些列并按正确的顺序重新添加。 这发生在我身上,手动扩展数据库以添加新功能,我遗漏了一列,当我添加它时,序列是不正确的。 在这里找不到足够的解决方案之后,我只需使用以下命令更正表。
注意:只有在要删除的列中没有数据的情况下才执行此操作。 有人说列队顺序无关紧要。我经常使用SQL Server Management Studio“生成脚本”来创建数据库架构的文本版本。为了有效地版本控制这些脚本(Git)并进行比较(WinMerge),兼容数据库的输出必须相同,突出显示的差异是真正的数据库差异。 列顺序很重要,但只是对某些人,而不是对每个人! |
![]() |
14
0
在SQLServer Management Studio中: 工具->选项->设计器->表和数据库设计器 取消选择“防止保存需要重新创建表的更改”。 现在您可以重新排序表了。 |
![]() |
15
0
为了有一个特定的列顺序,您需要按您希望的顺序逐列选择。 选择顺序指示列在输出中的顺序。 |
![]() |
16
0
尝试此命令:
这将使年龄位置变为第一个位置。 |
![]() |
17
-1
使用
显示表的默认列顺序。 如果要更改列的顺序。 指定要相应显示的列名称
|
![]() |
18
-1
您可以使用索引..索引后,如果从XXXX中选择*结果应根据索引,但仅限于结果集。非表结构 |
![]() |
19
-2
首先修改表名modify columnname int(5); 将列置于第一 在(table name)之后更改表名modify columnname int(5); |
![]() |
20
-3
示例:在表格状态中,在字段价格之后更改字段优先级的位置。
|
![]() |
ybou · 需要帮助从SQL 2005查询中删除过时的=*连接运算符 7 年前 |
![]() |
Robert · 将多个分隔符分隔的字段视为不同的行 8 年前 |
![]() |
hud · 执行存储过程会导致错误 8 年前 |
![]() |
Gonzalo · 如何将存储过程的结果插入到新表中? 9 年前 |