TEXTIMAGE_ON [PRIMARY] কি?


122

আমি অনেক টেবিলগুলিতে কাজ করেছি এবং সকলের কাছে এই জিনিস ছিল:

CREATE TABLE Persons(
    [id] [int] IDENTITY(1,1) NOT NULL,
    [modified_on] [datetime] NULL,
    [modified_by] [varchar](200) NULL,
) 
ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

কি TEXTIMAGE_ON [PRIMARY]এসকিউএল সার্ভার / লেনদেন-SQL এর যে?


আপনি অনুসরণ করতে পারেন এই ..
Pugal

উত্তর:


46

এমএসডিএন থেকে

TEXTIMAGE_ON {ফাইলগোষ্ঠী | "ডিফল্ট" }

ইঙ্গিত করে যে পাঠ্য, নেক্সট, চিত্র, এক্সএমএল, বার্চর (সর্বোচ্চ), এনভারচার (সর্বাধিক), ভের্বাইনারি (সর্বাধিক), এবং সিএলআর ব্যবহারকারী-সংজ্ঞায়িত টাইপ কলাম (জ্যামিতি এবং ভূগোল সহ) সঞ্চিত আছে file

টেবিলে কোনও বড় মান কলাম না থাকলে TEXTIMAGE_ON অনুমোদিত নয়। সুনির্দিষ্ট থাকলে TEXTIMAGE_ON নির্দিষ্ট করা যায় না <partition_scheme>। যদি "ডিফল্ট" নির্দিষ্ট করা থাকে, বা যদি TEXTIMAGE_ON মোটেও নির্দিষ্ট না করা থাকে তবে বৃহত্তর মান কলামগুলি ডিফল্ট ফাইলগ্রুপে সঞ্চিত থাকে। CREATE টেবিলটিতে উল্লিখিত যে কোনও বৃহত্তর মান কলামের তথ্য সংরক্ষণের পরে পরিবর্তন করা যাবে না।

দ্রষ্টব্য: এই প্রসঙ্গে, ডিফল্ট কোনও কীওয়ার্ড নয়। এটি ডিফল্ট ফাইলগ্রুপের জন্য একটি শনাক্তকারী এবং TEXTIMAGE_ON "ডিফল্ট" বা TEXTIMAGE_ON [ডিফল্ট] এর মতোই সীমিত করতে হবে। যদি "ডিফল্ট" নির্দিষ্ট করা থাকে তবে বর্তমান সেশনের জন্য অবশ্যই QUOTED_IDENTIFIER বিকল্পটি চালু থাকতে হবে। এটি ডিফল্ট সেটিংস।


93
বোঝা যায় না!
মিতুল শেঠ

3
@ মিতুলশেঠ: - আপনার কাছে কী পরিষ্কার নয়? ম্যানুয়ালটি সব কিছু বলেছে, এটি ফাইলগ্রুপে সঞ্চিত বিভিন্ন প্রকারগুলি নির্দেশ করতে ব্যবহৃত হয়
রাহুল ত্রিপাঠি

12
যে কেউ সহজ ব্যাখ্যা দিতে পারে। এমএসডিএন আমার কাছে কিছুটা উঁচু মনে হচ্ছে!
মিতুল শেঠ

4
@RT এর অর্থ কি এর অর্থ হ'ল আমরা যখনই ভারচার (সর্বোচ্চ) ব্যবহার করি তখনই আমাদের এটি নির্দিষ্ট করা উচিত? আমরা যদি না করি?
মিতুল শেঠ

34
যথারীতি মাইক্রোসফ্টের বর্ণনাটি বসন্তকালে মিসিসিপি নদীর জলের মতো পরিষ্কার।
সানক্যাট 2000

209

ফর্ম্যাটটি দেওয়া হল:

CREATE TABLE TableName(...) TEXTIMAGE_ON { filegroup | "default" }

TEXTIMAGE সমস্ত বড় / সীমাহীন-আকারের ক্ষেত্রের প্রকারগুলি বোঝায়: পাঠ্য, নেক্সট, চিত্র, এক্সএমএল, ভারচার (সর্বাধিক), এনভারচার (সর্বাধিক), ভের্বাইনারি (সর্বাধিক), এবং সিএলআর ব্যবহারকারী-সংজ্ঞায়িত টাইপ কলাম (জ্যামিতি এবং ভূগোল সহ)।

তারপরে, আপনার ফাইল এবং ফাইলগ্রুপগুলি কী তা জানতে হবে। ডেটাবেস ফাইল এবং ফাইলগ্রুপগুলিতে এমএসডিএন এন্ট্রি থেকে :

ফাইল

সর্বনিম্ন, প্রতিটি এসকিউএল সার্ভার ডাটাবেসে দুটি অপারেটিং সিস্টেম ফাইল থাকে: একটি ডেটা ফাইল এবং লগ ফাইল। ডেটা ফাইলগুলিতে টেবিল, সূচিপত্র, সঞ্চিত পদ্ধতি এবং দর্শনগুলির মতো ডেটা এবং অবজেক্ট থাকে। লগ ফাইলগুলি ডাটাবেসের সমস্ত লেনদেন পুনরুদ্ধার করতে প্রয়োজনীয় তথ্য ধারণ করে contain বরাদ্দ এবং প্রশাসনের উদ্দেশ্যে ফাইল গ্রুপগুলিতে ডেটা ফাইলগুলি একত্রে গ্রুপ করা যায়।

Filegroups

প্রতিটি ডাটাবেসের একটি প্রাথমিক ফাইলগ্রুপ থাকে। এই ফাইলগ্রুপটিতে প্রাথমিক ডেটা ফাইল এবং যে কোনও মাধ্যমিক ফাইল রয়েছে যা অন্য ফাইলগ্রুপগুলিতে রাখে না। ব্যবহারকারী-সংজ্ঞায়িত ফাইলগ্রুপগুলি প্রশাসনিক, ডেটা বরাদ্দ এবং অবস্থানের উদ্দেশ্যে একসাথে ডেটা ফাইলগুলিতে তৈরি করা যেতে পারে।

সুতরাং,

CREATE TABLE ... ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

কিছুটা অপ্রয়োজনীয় বলে মনে হবে, কারণ এটি বলছে যে উল্লিখিত বৃহত-পাঠ্য-মান কলামগুলি প্রাথমিক ফাইলগ্রুপের মধ্যে সংরক্ষণ করা উচিত, এটি আসলে ডিফল্ট ক্রিয়া।

কাস্টম নামে একটি কাস্টম ফাইলগোষ্ঠীর অস্তিত্ব ধরে নিয়ে আপনি সম্ভবত এরকম কিছু লিখবেন:

CREATE TABLE ... ON [PRIMARY] TEXTIMAGE_ON [CUSTOM]

আপনি বড় বাইনারি বা পাঠ্য সংরক্ষণ করার জন্য একটি কাস্টম ফাইলগোষ্ঠী তৈরি করবেন এবং এই ক্ষেত্রে 'সাধারণ' ক্ষেত্রগুলির তথ্য প্রাথমিক ফাইলগ্রুপের একটি ডেটা ফাইলে বসত, যখন সম্পর্কিত 'বৃহত্তর' ক্ষেত্রগুলি শারীরিকভাবে পৃথক ডেটা ফাইলে সংরক্ষণ করা হত (গৌণ কাস্টম ফাইলগ্রুপে)।

আপনি এটি এটি করতেন যাতে আপনি পৃথক সংরক্ষণাগার বা প্রতিরূপকরণ কৌশলকে পৃথক সংরক্ষণের অনুমতি দিতে - বৃহত ক্ষেত্রগুলি থেকে (যা সম্ভবত ডিস্কের জায়গার তুলনায় তুলনামূলকভাবে ছোট হবে) মূল সম্পর্কিত ডিটামোডেলকে পৃথক করতে পারে - প্রতিটি ফাইলগোষ্ঠীতে প্রয়োগ করা হবে।


39
এই গৃহীত উত্তর চেয়ে অনেক বেশি বোধগম্য উত্তর দেওয়ার জন্য আপনাকে ধন্যবাদ !
জিরো 3

12
@ মিতুল শেঠ আরও ভাল সঠিক উত্তর চয়ন করতে খুব বেশি দেরি করেন না :)
বিপরীত প্রকৌশলী

1

আপনার যদি কোনও বৃহত পাঠ্য কলাম যেমন টেক্সট, নেক্সট, চিত্র, এক্সএমএল, ভারচার (সর্বাধিক), এনভারচার (সর্বাধিক), ভের্বাইনারি (সর্বাধিক) এবং সিএলআর না থাকে তবে আপনি কেবল ব্যবহার করতে পারেন:

CREATE TABLE Persons(
[id] [int] IDENTITY(1,1) NOT NULL,
[modified_on] [datetime] NULL,
[modified_by] [varchar](200) NULL,)ON [PRIMARY]

2
এমএসজি 156, স্তর 15, রাজ্য 1, লাইন 12 'টেবিল' কীওয়ার্ডের নিকটে ভুল সিনট্যাক্স।
বিপরীতে ইঞ্জিনিয়ার

@ রিভার্সডজিনিয়ার এই সিনট্যাক্স ত্রুটিটি শেষে অহেতুক কমা দ্বারা সৃষ্ট: [modified_by] [varchar](200) NULL
ওরিজজি

@ ওরিজজি শিওর উত্তরের লেখককে কেবল তাদের নমুনা কোডটি ঠিক করতে সহায়তা করতে চেয়েছিলেন। পুরোটাই অদ্ভুত জিনিস যে এখন আর নেই আমার মেশিন (- 13.0.5698.0 (x64) মাইক্রোসফট SQL সার্ভার 2016 (জন্য SP2-CU12) (KB4536648)) উপর বাক্যগঠন ত্রুটি দেয়
বিপরীত ইঞ্জিনিয়ার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.