আমি কীভাবে এসকিএল সার্ভারে দশমিক কলামের নির্ভুলতা পরিবর্তন করব?


উত্তর:


157
ALTER TABLE Testing ALTER COLUMN TestDec decimal(16,1)

শুধু করা decimal(precision, scale), আপনার পছন্দসই মান স্পষ্টতা এবং স্কেল প্রতিস্থাপন।

আমি টেবিলের ডেটা সহ এটি দিয়ে কোনও পরীক্ষা করিনি, তবে আপনি যদি যথার্থতা পরিবর্তন করেন তবে নতুন নির্ভুলতা কম হলে আপনার ডেটা হারাতে হবে।


4
দশমিকের (18,2) দশমিক (18,3) এর যথার্থতা বাড়ানোর সময় এটি আমার পক্ষে কাজ করেছিল।
রেবেকা

আপনাকে ধন্যবাদ, এত সহজ, এখনও খুঁজে পাওয়া শক্ত।
ফিলিপ লাভোই

আপনার যদি 16 (মোট) অঙ্কের সংখ্যা থাকে এবং আপনি স্কেলটি বাড়ান, তবে এটি 2 টি নতুন দশমিক স্থানের জন্য উচ্চতর আদেশের অঙ্কগুলিতে ঝাঁকুনি দেবে? দুর্ভাগ্যক্রমে আমি এই মুহুর্তে এটি পরীক্ষা করতে পারি না।
ব্যবহারকারী420667

12
আমার নিজের প্রশ্নের উত্তর দেওয়ার জন্য, আমি একটি স্ক্যালফিল্ড তৈরি করেছি: sqlfiddle.com/#!3/4b8cb/1/0 । উত্তরটি হ'ল দশমিক (18,2) দশমিক (18,3) এ পরিবর্তন করার ফলে টেবিলটি পরিবর্তন করার সময় ত্রুটি হবে। দশমিক (18,2) থেকে দশমিক (19,3) যদিও কাজ করা উচিত।
ব্যবহারকারী420667

12

আরও ভাল উপায় হতে পারে, তবে আপনি সর্বদা নতুন কলামে কলামটি অনুলিপি করতে পারেন, এটিকে ফেলে দিন এবং নতুন কলামটির নাম পরিবর্তন করে প্রথম কলামের নামে রাখতে পারেন।

বুদ্ধিমান:

ALTER TABLE MyTable ADD NewColumnName DECIMAL(16, 2);
GO

UPDATE  MyTable
SET     NewColumnName = OldColumnName;
GO

ALTER TABLE CONTRACTS DROP COLUMN OldColumnName;
GO


EXEC sp_rename
    @objname = 'MyTable.NewColumnName',
    @newname = 'OldColumnName',
    @objtype = 'COLUMN'
GO

এটি এসকিউএল সার্ভার ২০০৮ আর 2 এ পরীক্ষা করা হয়েছিল, তবে এসকিউএল সার্ভার 2000+ এ কাজ করা উচিত।


0
ALTER TABLE (Your_Table_Name) MODIFY (Your_Column_Name) DATA_TYPE();

আপনার সমস্যার জন্য:

ALTER TABLE (Your_Table_Name) MODIFY (Your_Column_Name) DECIMAL(Precision, Scale); 

-2
ALTER TABLE `tableName` CHANGE  `columnName` DECIMAL(16,1) NOT NULL;

আমি এটি পরিবর্তনের জন্য ব্যবহার করি


-3

এন্টারপ্রাইজ ম্যানেজার, ডিজাইন টেবিল এ যান, আপনার ক্ষেত্রে ক্লিক করুন।

দশমিক কলাম করুন

নীচে বৈশিষ্ট্যগুলিতে একটি নির্ভুল সম্পত্তি রয়েছে


4
এটি টেবিলটি পুনরায় তৈরি করবে।
আলেকজান্ডার কোজেভনিকিকভ

4
সেক্ষেত্রে, এটি করবেন না: p
qui

আমি কখনই বুঝতে পারি নি যে নকশার টেবিল পৃষ্ঠাটি। কোনও ক্যোয়ারিতে এটি করতে সমস্যা না হওয়া সত্ত্বেও আপনি ডেটাটাইপ সম্পর্কিত কোনও রূপ সম্পাদনা করতে পারবেন না। সম্ভবত, নকশার পৃষ্ঠাটি ব্যাকগ্রাউন্ডে কোয়েরি ব্যবহার করে, আমি বুঝতে পারি না কেন এই সীমাবদ্ধতা কার্যকর করা হয়েছিল।
ফ্ল্যাটার

4
আপনি এটির মাধ্যমে এটি অক্ষম করতে পারেন: সরঞ্জামসমূহ> বিকল্পগুলি> ডিজাইনার - "সংরক্ষণের পরিবর্তনগুলি সংরক্ষণ করুন যা টেবিল পুনরায় নির্মাণের প্রয়োজন"।
ক্রিস মিসাল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.