تغییر جایگاه قرار گیری ستون ها
سلام دوستان خسته نباشید.
من یک جدول دارم که شامل سه ستون با نام های C1 و C2 و C3 میشه.
حالا می خوام داخل ساختار جدول جای این ستون ها رو با هم تغییر بدم مثلا جای ستون C3 را با C2 عوض کنم.ممنون میشم دوستان کمک کنند.
البته متذکر میشم من نمی خوام توی حالت نمایش این کارو انجام بدم می خوام ساختار جدول را تغییر بدم.(البته با دستورات SQL).
تشکر
نقل قول: تغییر جایگاه قرار گیری ستون ها
سلام
فکر میکنم دستی هم تفییر می کند. لازم به دستورات SQL نیست.با یه Drag & Drop ساده میشه این کارو کرد.
نقل قول: تغییر جایگاه قرار گیری ستون ها
نقل قول:
نوشته شده توسط
mahan.2002
سلام
فکر میکنم دستی هم تفییر می کند. لازم به دستورات SQL نیست.با یه Drag & Drop ساده میشه این کارو کرد.
دوست عزیز میدونم دستی هم میشه اما من می خوام از طریق برنامه خودم اینکار رو انجام بدم.دوستان کسی تو این ضمینه کارنکره؟؟؟
نقل قول: تغییر جایگاه قرار گیری ستون ها
سلام
یه راه اینه که view ایجاد کنی ولی اگه بخوای بصورت فیزیکی جای ستون ها رو عوض کنی میتونی این کارو بکنی:
/* Original sample table with three fields */
CREATE TABLE [dbo].[TestTable](
[FIELD1] [nchar](10) NULL,
[FIELD2] [nchar](10) NULL,
[FIELD3] [nchar](10) NULL
) ON [PRIMARY]
/* The following script will make FIELD3 the first column */
CREATE TABLE dbo.Tmp_TestTable
(
FIELD3 nchar(10) NULL,
FIELD1 nchar(10) NULL,
FIELD2 nchar(10) NULL
) ON [PRIMARY]
GO
IF EXISTS(SELECT * FROM dbo.TestTable)
EXEC('INSERT INTO dbo.Tmp_TestTable (FIELD3, FIELD1, FIELD2)
SELECT FIELD3, FIELD1, FIELD2 FROM dbo.TestTable WITH (HOLDLOCK TABLOCKX)')
GO
DROP TABLE dbo.TestTable
GO
EXECUTE sp_rename N'dbo.Tmp_TestTable', N'TestTable', 'OBJECT'
GO
مرجع http://stackoverflow.com/questions/7...n-table-schema
موفق باشی
نقل قول: تغییر جایگاه قرار گیری ستون ها
نقل قول:
نوشته شده توسط
omid_csh
سلام
یه راه اینه که view ایجاد کنی ولی اگه بخوای بصورت فیزیکی جای ستون ها رو عوض کنی میتونی این کارو بکنی:
/* Original sample table with three fields */
CREATE TABLE [dbo].[TestTable](
[FIELD1] [nchar](10) NULL,
[FIELD2] [nchar](10) NULL,
[FIELD3] [nchar](10) NULL
) ON [PRIMARY]
/* The following script will make FIELD3 the first column */
CREATE TABLE dbo.Tmp_TestTable
(
FIELD3 nchar(10) NULL,
FIELD1 nchar(10) NULL,
FIELD2 nchar(10) NULL
) ON [PRIMARY]
GO
IF EXISTS(SELECT * FROM dbo.TestTable)
EXEC('INSERT INTO dbo.Tmp_TestTable (FIELD3, FIELD1, FIELD2)
SELECT FIELD3, FIELD1, FIELD2 FROM dbo.TestTable WITH (HOLDLOCK TABLOCKX)')
GO
DROP TABLE dbo.TestTable
GO
EXECUTE sp_rename N'dbo.Tmp_TestTable', N'TestTable', 'OBJECT'
GO
مرجع
http://stackoverflow.com/questions/7...n-table-schema
موفق باشی
سلام دوست عزیز.ممنون از راه حلی که ارائه دادید اما یه سوالی برام پیش اومده.شما با این کار دارید یه جدول میسازید و اطلاعات را بهش منطقل می کنید و بعد جدول قبلی رو حذف می کنید.آیا این کار برای جدولی با چند میلیون رکورد هم جواب میده؟؟ البته منظورم از جواب دادن اینه که عملیات زمان بری نمیشه؟تشکر
نقل قول: تغییر جایگاه قرار گیری ستون ها
سلام
حتما چنین عملیاتی با چند میلیون رکورد زمان بر خواهد بود، ولی برای جابجایی ستون ها راه دیگری وجود ندارد.
اگه اینکارو نیمیخوای بکنی، میتونی یه view ایجاد کنی با نام جدولت و اسم جدولتو هم یه چیز دیگه بذاری.
نقل قول: تغییر جایگاه قرار گیری ستون ها
نقل قول:
نوشته شده توسط
omid_csh
سلام
حتما چنین عملیاتی با چند میلیون رکورد زمان بر خواهد بود، ولی برای جابجایی ستون ها راه دیگری وجود ندارد.
اگه اینکارو نیمیخوای بکنی، میتونی یه view ایجاد کنی با نام جدولت و اسم جدولتو هم یه چیز دیگه بذاری.
راه که وجود داره میشه از جداول سیستمی استفاده کرد ولی از sql 2005 به بعد امکان ویرایش جداول سیستمی برداشته شد.از دوستان کسی اطلاعی نداره تو sql 2012 چنین امکانی اضافه شده یا نه؟
نقل قول: تغییر جایگاه قرار گیری ستون ها
دوستان کسی راه حلی نداره؟