疑难杂症,如何调换一个表里面两列的位置?

Kingofcode 2010-07-22 11:28:41
比如A表 字段分别为 A(column1,column2,column3,column4)请我能不能使用sql语句将其修改为
A(column1,column4,column2,column3) 说明:里面有数。最好安全解决。
...全文
97 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
claro 2010-07-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xys_777 的回复:]

在企业管理器里可以用鼠标左键按住列,移动位置
[/Quote]哈哈,是有这功效。
dla001 2010-07-22
  • 打赏
  • 举报
回复
建个新表,把数据导入。 :)
永生天地 2010-07-22
  • 打赏
  • 举报
回复
下图操作sql server给出的语句(不是同一个表)
/* 为了防止任何可能出现的数据丢失问题,您应该先仔细检查此脚本,然后再在数据库设计器的上下文之外运行此脚本。*/
BEGIN TRANSACTION
SET QUOTED_IDENTIFIER ON
SET ARITHABORT ON
SET NUMERIC_ROUNDABORT OFF
SET CONCAT_NULL_YIELDS_NULL ON
SET ANSI_NULLS ON
SET ANSI_PADDING ON
SET ANSI_WARNINGS ON
COMMIT
BEGIN TRANSACTION
GO
CREATE TABLE dbo.Tmp_Sale
(
Id int NOT NULL IDENTITY (1, 1),
SaleTime datetime NOT NULL,
Name varchar(16) NOT NULL
) ON partschSale(SaleTime)
GO
SET IDENTITY_INSERT dbo.Tmp_Sale ON
GO
IF EXISTS(SELECT * FROM dbo.Sale)
EXEC('INSERT INTO dbo.Tmp_Sale (Id, SaleTime, Name)
SELECT Id, SaleTime, Name FROM dbo.Sale WITH (HOLDLOCK TABLOCKX)')
GO
SET IDENTITY_INSERT dbo.Tmp_Sale OFF
GO
DROP TABLE dbo.Sale
GO
EXECUTE sp_rename N'dbo.Tmp_Sale', N'Sale', 'OBJECT'
GO
COMMIT



playwarcraft 2010-07-22
  • 打赏
  • 举报
回复
sql2000比較方便修改系統表,
sql2005的話,比較麻煩,看這個介紹,http://www.cnblogs.com/madh/archive/2009/03/26/1422646.html

主要update syscolumns
华夏小卒 2010-07-22
  • 打赏
  • 举报
回复
可以通过查询的时候,设置先后
Kingofcode 2010-07-22
  • 打赏
  • 举报
回复
能不能直接使用sql语句解决?
  • 打赏
  • 举报
回复


呵呵……
永生天地 2010-07-22
  • 打赏
  • 举报
回复
在企业管理器里可以用鼠标左键按住列,移动位置
playwarcraft 2010-07-22
  • 打赏
  • 举报
回复
要允许修改系统表
syscolumns
Kingofcode 2010-07-22
  • 打赏
  • 举报
回复
调换位置。不是交换数据
永生天地 2010-07-22
  • 打赏
  • 举报
回复
什么意思,数据交换吗?

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧