ইউনিকোড প্যারামিটার এবং পরিবর্তনশীল নামগুলি কীভাবে তৈরি করবেন


53

এই সমস্ত কাজ করে:

CREATE DATABASE [¯\_(ツ)_/¯];
GO
USE [¯\_(ツ)_/¯];
GO
CREATE SCHEMA [¯\_(ツ)_/¯];
GO
CREATE TABLE [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]([¯\_(ツ)_/¯] NVARCHAR(20));
GO
CREATE UNIQUE CLUSTERED INDEX [¯\_(ツ)_/¯] ON [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]([¯\_(ツ)_/¯]);
GO
INSERT INTO [¯\_(ツ)_/¯].[¯\_(ツ)_/¯]([¯\_(ツ)_/¯]) VALUES (N'[¯\_(ツ)_/¯]');
GO
CREATE VIEW [¯\_(ツ)_/¯].[vw_¯\_(ツ)_/¯] AS SELECT [¯\_(ツ)_/¯] FROM [¯\_(ツ)_/¯].[¯\_(ツ)_/¯];
GO
CREATE PROC [¯\_(ツ)_/¯].[sp_¯\_(ツ)_/¯] @Shrug NVARCHAR(20) AS SELECT [¯\_(ツ)_/¯] FROM [¯\_(ツ)_/¯].[vw_¯\_(ツ)_/¯] WHERE [¯\_(ツ)_/¯] = @Shrug;
GO
EXEC [¯\_(ツ)_/¯].[¯\_(ツ)_/¯].[sp_¯\_(ツ)_/¯] @Shrug = N'[¯\_(ツ)_/¯]';
GO

তবে আপনি সম্ভবত দেখতে পাচ্ছেন আমি কোথায় যাচ্ছি: আমি @ শ্রাগ চাই না, আমি চাই @¯\_(ツ)_/¯

২০০৮-২০০7 থেকে কোনও সংস্করণে এগুলির কোনওটিরই কাজ নয়:

CREATE PROC [¯\_(ツ)_/¯].[sp_¯\_(ツ)_/¯] @[¯\_(ツ)_/¯] NVARCHAR(20) AS SELECT [¯\_(ツ)_/¯] FROM [¯\_(ツ)_/¯].[vw_¯\_(ツ)_/¯] WHERE [¯\_(ツ)_/¯] = @[¯\_(ツ)_/¯];
GO
CREATE PROC [¯\_(ツ)_/¯].[sp_¯\_(ツ)_/¯] [@¯\_(ツ)_/¯] NVARCHAR(20) AS SELECT [¯\_(ツ)_/¯] FROM [¯\_(ツ)_/¯].[vw_¯\_(ツ)_/¯] WHERE [¯\_(ツ)_/¯] = [@¯\_(ツ)_/¯];
GO

সুতরাং, ইউনিকোড সঞ্চিত প্রক্রিয়া প্যারামিটারের নামগুলি ব্যবহার করার কোনও উপায় আছে কি?

উত্তর:


44

ঠিক আছে, সনাক্তকারীরা সর্বদা ইউনিকোড / হয় NVARCHAR, তাই প্রযুক্তিগতভাবে আপনি এমন কোনও কিছুই তৈরি করতে পারবেন না যার একটি ইউনিকোড নাম নেই have

আপনার এখানে যে সমস্যা হচ্ছে তা পুরোপুরি অক্ষর (গুলি) ব্যবহারের কারণে শ্রেণিবদ্ধকরণ। নিয়মিত (অর্থাত না ছাড়ানো) শনাক্তকারীদের নিয়মগুলি হ'ল:

  • প্রথম অক্ষরটি অবশ্যই:
    • ইউনিকোড স্ট্যান্ডার্ড 3.2 দ্বারা সংজ্ঞায়িত একটি চিঠি।
    • আন্ডারস্কোর (_), স্বাক্ষরে (@), বা সংখ্যা চিহ্ন (#)
  • পরবর্তী চিঠিগুলি হতে পারে:
    • ইউনিকোড স্ট্যান্ডার্ড 3.2-এ সংজ্ঞায়িত বর্ণগুলি।
    • বেসিক ল্যাটিন বা অন্যান্য জাতীয় স্ক্রিপ্ট থেকে দশমিক সংখ্যা।
    • আন্ডারস্কোর (_), স্বাক্ষরে (@), সংখ্যা চিহ্ন (#), বা ডলার চিহ্ন ($)
  • এম্বেড করা স্পেস বা বিশেষ অক্ষর অনুমোদিত নয়।
  • পরিপূরক চরিত্রগুলি অনুমোদিত নয়।

আমি এই প্রসঙ্গে একমাত্র নিয়মকে সাহসী করেছিলাম। "প্রথম অক্ষর" বিধিগুলি এখানে প্রাসঙ্গিক না হওয়ার কারণটি হ'ল সমস্ত স্থানীয় ভেরিয়েবল এবং পরামিতিগুলির প্রথম অক্ষর সর্বদা "স্বাক্ষরে" থাকে @

এবং স্পষ্টরূপে: কী "অক্ষর" হিসাবে বিবেচিত হয় এবং কোনটিকে "দশমিক অঙ্ক" হিসাবে বিবেচনা করা হয় তা ইউনিকোড চরিত্রের ডেটাবেস-এ প্রতিটি বর্ণচিহ্ন নির্ধারিত বৈশিষ্ট্যের উপর নির্ভর করে । ইউনিকোড প্রতিটি চরিত্রের জন্য অনেকগুলি বৈশিষ্ট্য বরাদ্দ করে, যেমন: is_uppercase, is_lowercase, is_digit, is_decimal, is_compining, ইত্যাদি ইত্যাদি we এটি আমরা মর্টেলগুলি অক্ষর বা দশমিক অঙ্ক বিবেচনা করব তা নয়, তবে কোন বৈশিষ্ট্যগুলিকে এই বৈশিষ্ট্যগুলি অর্পণ করা হয়েছে। এই বিভাজনগুলি প্রায়শই "বিরামচিহ্ন" ইত্যাদির সাথে মেলে নিয়মিত এক্সপ্রেশনগুলিতে ব্যবহৃত হয় উদাহরণস্বরূপ, \p{Lu}কোনও উচ্চ-অক্ষরের সাথে (সমস্ত ভাষা / স্ক্রিপ্ট জুড়ে) \p{IsDingbats}মেলে এবং কোনও "ডিঙ্গব্যাটস" চরিত্রের সাথে মেলে।

সুতরাং, আপনার প্রয়াসে:

DECLARE @¯\_(ツ)_ INT;

কেবলমাত্র _(আন্ডারস্কোর বা "নিম্ন রেখা") এবং (কাতাকানা লেটার টু ইউ + 30 সি 4) অক্ষরগুলি এই নিয়মগুলির মধ্যে খাপ খায়। এখন, সমস্ত চরিত্রগুলি ¯\_(ツ)_/¯সীমিত চিহ্নিতকারীদের জন্য ঠিক আছে, তবে দুর্ভাগ্যক্রমে মনে হচ্ছে ভেরিয়েবল / প্যারামিটারের নাম এবং GOTOলেবেলগুলি সীমিত করা যায় না (যদিও কার্সারের নামগুলি হতে পারে)।

সুতরাং, ভেরিয়েবল / প্যারামিটার নামের জন্য, যেহেতু সেগুলি সীমিত করা যায় না, আপনি কেবল অক্ষর ব্যবহার করে আটকে গেছেন যা ইউনিকোড ৩.২ অনুযায়ী "অক্ষর" বা "দশমিক সংখ্যা" হিসাবে উপযুক্ত (ডকুমেন্টেশন অনুসারে; আমার পরীক্ষা করা দরকার) শ্রেণিবিন্যাস যদি ইউনিকোডের নতুন সংস্করণগুলির জন্য আপডেট করা থাকে যেহেতু শ্রেণিবদ্ধকরণগুলি সাজানো ওজনের চেয়ে আলাদাভাবে পরিচালনা করা হয়)।

তবুও # 1 , জিনিসগুলি যেমন হওয়া উচিত তত সোজা-এগিয়ে নেই। আমি এখন আমার গবেষণা সম্পূর্ণ করতে সক্ষম হয়েছি এবং বলেছি যে বর্ণিত সংজ্ঞাটি পুরোপুরি সঠিক নয়। নিয়মিত শনাক্তকারীদের জন্য কোন অক্ষরগুলি বৈধ তা সঠিক (এবং যাচাইযোগ্য) সংজ্ঞাটি হ'ল:

  • প্রথম চরিত্র:

    • ইউনিকোড ৩.২ এ "আইডি_সার্ট" হিসাবে শ্রেণিবদ্ধ করা যায় এমন কিছু (যা "চিঠিগুলি" অন্তর্ভুক্ত করে তবে "অক্ষরের মতো সংখ্যার অক্ষর "ও অন্তর্ভুক্ত)
    • _(নিম্নরেখা / আন্ডারস্কোর) বা _(পূর্ণ প্রশস্ততম নিম্নরেখা) হতে পারে
    • হতে পারে @তবে কেবল পরিবর্তনশীল / পরামিতিগুলির জন্য
    • হতে পারে #, তবে যদি স্কিমা-সীমাবদ্ধ অবজেক্ট থাকে তবে কেবল টেবিল এবং সঞ্চিত প্রক্রিয়াগুলির জন্য (যে ক্ষেত্রে তারা নির্দেশ করে যে বস্তুটি অস্থায়ী)
  • পরবর্তী চরিত্রগুলি:

    • ইউনিকোড ৩.২ এ "আইডি_কন্টিনিউ" হিসাবে শ্রেণিবদ্ধ কিছু হতে পারে (যার মধ্যে "দশমিক" সংখ্যা রয়েছে, তবে "ব্যবধান এবং সংযোগের চিহ্নগুলি সংযুক্ত করে", এবং "বিরাম চিহ্নগুলি সংযুক্ত করে")
    • হতে পারে @, #অথবা$
    • ফর্ম্যাট নিয়ন্ত্রণের অক্ষর হিসাবে ইউনিকোড 3.2 এ শ্রেণিবদ্ধত 26 টি বর্ণের মধ্যে যে কোনও একটি হতে পারে

(মজাদার ঘটনা: "আইডি_এসটিআর্ট" এবং "আইডি_কন্টিনিউ" "আইডি" মানে "আইডেন্টিফায়ার" Ima ধারণা করুন ;-)

"ইউনিকোড ইউটিলিটিস: ইউনিকোডসেট" অনুসারে:

  • বৈধ শুরুর অক্ষর

    [: বয়স = ৩.২:] এবং [: আইডি_স্টার্ট = হ্যাঁ:]

    -- Test one "Letter" from each of 10+ languages, as of Unicode 3.2
    DECLARE @ᔠᑥᑒᏯשፙᇏᆇᄳᄈლဪඤagೋӁウﺲﶨ   INT;
    -- works
    
    
    -- Test a Supplementary Character that is a "Letter" as of Unicode 3.2
    DECLARE @𝒲 INT;-- Mathematical Script Capital W (U+1D4B2)
    /*
    Msg 102, Level 15, State 1, Line XXXXX
    Incorrect syntax near '0xd835'.
    */
  • বৈধ ধারাবাহিকতা অক্ষর

    [: বয়স = ৩.২:] এবং [[আইডি_কন্টিনিয় = হ্যাঁ:]

    -- Test various decimal numbers, but none are Supplementary Characters
    DECLARE @६৮༦൯௫୫9 INT;
    -- works (including some Hebrew and Arabic, which are right-to-left languages)
    
    
    -- Test a Supplementary Character that is a "decimal" number as of Unicode 3.2
    DECLARE @𝟜 INT; -- MATHEMATICAL DOUBLE-STRUCK DIGIT FOUR (U+1D7DC)
    /*
    Msg 102, Level 15, State 1, Line XXXXX
    Incorrect syntax near '0xd835'.
    */
    -- D835 is the first character in the surrogate pair D835 DFDC that makes up U+1D7DC

যাইহোক, # 2 , এমনকি ইউনিকোড ডাটাবেস অনুসন্ধান করাও এত সহজ হতে পারে। এই দুটি অনুসন্ধানগুলি এই শ্রেণিবদ্ধকরণগুলির জন্য বৈধ অক্ষরের একটি তালিকা তৈরি করে এবং সেই অক্ষরগুলি ইউনিকোড ৩.২ থেকে এসেছে, তবে ইউনিকোড স্ট্যান্ডার্ডের সংস্করণগুলিতে বিভিন্ন শ্রেণিবদ্ধকরণগুলির পরিবর্তনের সংজ্ঞা রয়েছে। অর্থ, ইউনিকোড বনাম 10.0 মধ্যে "ID_Start" এর ডেফিনেশনে (কি করে যা অনুসন্ধান আজ ব্যবহার করছে, 2018-03-26) হল না কি এটা ইউনিকোড বনাম 3.2 ছিল। সুতরাং, অনলাইন অনুসন্ধান সঠিক তালিকা সরবরাহ করতে পারে না। তবে আপনি ইউনিকোড ৩.২ তথ্য ফাইল দখল করতে পারেন এবং এসকিউএল সার্ভারটি আসলে কী ব্যবহার করে তার সাথে তুলনা করতে সেখান থেকে "আইডি_সার্ট" এবং "আইডি_সন্টিন্য" অক্ষরগুলির তালিকাটি দখল করতে পারেন। এবং আমি এটি করেছি এবং "হ্যাভার # 1" এ উল্লিখিত বিধিগুলির সাথে একটি সঠিক মিলের বিষয়টি নিশ্চিত করেছি।

নিম্নলিখিত দুটি ব্লগ পোস্ট আমদানি স্ক্রিপ্টগুলির লিঙ্কগুলি সহ অক্ষরের সঠিক তালিকা খুঁজে পেতে নেওয়া পদক্ষেপগুলি বিস্তারিত জানায়:

  1. ইউনি-কোড: টি-এসকিউএল নিয়মিত শনাক্তকারীদের জন্য বৈধ অক্ষরের সঠিক তালিকার সন্ধান, পর্ব 1
  2. ইউনি-কোড: টি-এসকিউএল নিয়মিত শনাক্তকারীর জন্য বৈধ অক্ষরের সঠিক তালিকার সন্ধান, পার্ট 2

অবশেষে, যে কেউ কেবল তালিকাটি দেখতে চান এবং এটি আবিষ্কার এবং যাচাই করতে এটি কী নিয়েছে তা নিয়ে উদ্বিগ্ন নয়, আপনি এটি এখানে খুঁজে পেতে পারেন:

বৈধ টি-এসকিউএল সনাক্তকারী অক্ষরের সম্পূর্ণরূপে সম্পূর্ণ তালিকা
(পৃষ্ঠাটি লোড করার জন্য একটি মুহূর্ত দিন; এটি 3.5 এমবি এবং প্রায় 47k লাইন)


"বৈধ" এএসসিআইআই অক্ষর, যেমন /এবং -কাজ না করা সম্পর্কিত: এএসসিআইআই চরিত্রের সেটগুলিতে অক্ষরগুলিও সংজ্ঞায়িত করা হয় বা হয় না এর সাথে ইস্যুটির কোনও সম্পর্ক নেই। বৈধ হওয়ার জন্য, চরিত্রটির হয় ID_Startবা ID_Continueসম্পত্তি থাকতে হবে, বা আলাদাভাবে উল্লেখ করা কয়েকটি কাস্টম চরিত্রগুলির মধ্যে একটি হতে হবে। বেশ কয়েকটি "বৈধ" এএসসিআইআই অক্ষর রয়েছে (মোট 128 টির মধ্যে 62 - বেশিরভাগ বিরামচিহ্ন এবং নিয়ন্ত্রণের অক্ষর) যা "নিয়মিত" সনাক্তকারীগুলিতে বৈধ নয়।

পরিপূরক চরিত্রগুলি সম্পর্কে: যদিও তারা অবশ্যই সীমিত চিহ্নিতকারীগুলিতে ব্যবহার করা যেতে পারে (এবং ডকুমেন্টেশন অন্যথায় উল্লেখ করে বলে মনে হচ্ছে না), যদি সত্য হয় যে সেগুলি নিয়মিত শনাক্তকারীগুলিতে ব্যবহার করা যায় না, সম্ভবত তাদের পুরোপুরি সমর্থিত না হওয়ায় সম্ভবত এসকিউএল সার্ভার ২০১২-এ পরিপূরক চরিত্র-সচেতন কলশনগুলির পূর্বে অন্তর্নির্মিত কার্যগুলিতে প্রবর্তন করা হয়েছিল (এগুলিকে দুটি স্বতন্ত্র "অজানা" চরিত্র হিসাবে বিবেচনা করা হয়), এমনকি 100- এর পূর্বে নন-বাইনারি কোলেশনে তারা একে অপরের থেকে পৃথকও হতে পারে could স্তর স্তরের (এসকিউএল সার্ভার ২০০৮ সালে প্রবর্তিত)।

এএসসিআইআই সম্পর্কিত: 8-বিট এনকোডিংগুলি এখানে ব্যবহার করা হচ্ছে না কারণ সমস্ত সনাক্তকারী ইউনিকোড / NVARCHAR/ ইউটিএফ -16 এলই। বিবৃতিটি একটি "যা" এর SELECT ASCII('ツ');মান দেয় 63? (চেষ্টা করুন SELECT CHAR(63);) যেহেতু character অক্ষরটি এমনকি যদি উচ্চতর কেস "এন" এর সাথে উপস্থাপিত হয় তবে অবশ্যই কোড পৃষ্ঠা 1252 তে নেই However তবে, সেই অক্ষরটি কোরিয়ান কোড পৃষ্ঠাতে রয়েছে এবং এটি "এন ছাড়াই সঠিক ফলাফল প্রদান করে" "উপসর্গ, একটি কোরিয়ান ডিফল্ট কোলেশন সহ একটি ডাটাবেসে:

SELECT UNICODE('ツ'); -- 12484

ফলাফলকে প্রভাবিত করে প্রথম চিঠিটি সম্পর্কে: স্থানীয় ভেরিয়েবল এবং পরামিতিগুলির জন্য প্রথম অক্ষর সর্বদা থাকায় এটি সম্ভব নয় @। এই নামগুলির জন্য আমরা যে প্রথম অক্ষরটি নিয়ন্ত্রণ করতে পারি তা আসলে নামের ২ য় অক্ষর।

স্থানীয় ভেরিয়েবলের নাম, প্যারামিটারের নাম এবং GOTOলেবেলগুলি কেন সীমিত করা যায় না তা সম্পর্কে: আমি সন্দেহ করি যে এটি এই আইটেমগুলি নিজেরাই ভাষার একটি অংশ হয়ে গেছে এবং এটি এমন কোনও কিছু নয় যা ডেটা হিসাবে সিস্টেম টেবিলে প্রবেশ করবে।


অনেক দুর্দান্ত, ধন্যবাদ এটি আমাকে এ দিকে পরিচালিত করেছে, যা একটি দুর্দান্ত ব্লগ পোস্ট তৈরি করতে চলেছে: gist.github.com/BrentOzar/9b08b5ab2b617847dbe4aa0297b4cd5b
ব্রেন্ট ওজার

8
@ ব্রেন্টওজার আপনি কি সম্প্রতি একটি সিটি স্ক্যান করেছেন?
রস প্রেসার

বাহ, এটি একটি চিত্তাকর্ষক উত্তর! এবং আমি দ্বিতীয় রস প্রেসিডেন্টের মন্তব্য।
এসকিউএল নের্ড

22

আমি মনে করি না যে এটি ইউনিকোডই সমস্যা সৃষ্টি করছে; স্থানীয় ভেরিয়েবল বা প্যারামিটার নামের ক্ষেত্রে, চরিত্রটি বৈধ এএসসিআইআই / ইউনিকোড ৩.২ অক্ষর নয় (এবং অন্যান্য সত্তার প্রকারের মতো ভেরিয়েবল / প্যারামিটারের জন্য কোনও পালানোর অনুক্রম নেই)।

এই ব্যাচটি সূক্ষ্মভাবে কাজ করে, এটি একটি ইউনিকোড অক্ষর ব্যবহার করে যা কেবল না-সীমাবদ্ধ শনাক্তকারীদের জন্য বিধি লঙ্ঘন করে না:

CREATE OR ALTER PROCEDURE dbo.[💩]
  @ツ int
AS
  CREATE TABLE [#ツ] (ツ int);
  INSERT [#ツ](ツ) SELECT @ツ;
  SELECT +1 FROM [#ツ];
GO
EXEC dbo.[💩] @ツ = 1;

আপনি স্ল্যাশ বা ড্যাশ ব্যবহার করার চেষ্টা করার সাথে সাথে উভয়ই বৈধ ASCII অক্ষর, এটি বোমা ফেলে:

Msg 102, Level 15, State 1, Procedure 💩 Incorrect syntax near '-'.

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


হাই হারুন এখানে কিছু বিষয় পরিষ্কার করার জন্য: ১) প্রথম চরিত্রটি কোনও সমস্যা নয় কারণ প্রথম অক্ষরটি আসলে @ভার / প্যারাম নামের the বৈধ অক্ষরগুলির পূর্বে থাকলেও যে চরিত্রটি কাজ করছে না তাদের কোনও অবস্থাতেই কাজ করা উচিত নয়। ২) ডকটিতে কেবলমাত্র উল্লেখ করা হয়েছে যে পরিপূরক চরিত্রগুলি নিয়মিত শনাক্তকারীগুলিতে ব্যবহার করা যাবে না (যা আমি চেষ্টা করেছি এমন সকলের ক্ষেত্রে মনে হয়) তবে এমবেড করা জায়গাগুলির মতোই সীমানা চিহ্নিতকারীগুলিতে কোনও বিধিনিষেধ দেয় না। এছাড়াও, আমি বিশ্বাস করি যে এগুলি আলাদা because কারণ তারা টি-এসকিউএল ভাষার অংশ, ডিবি-তে জিনিস নয়।
সলোমন রুটজকি

@ সলোমনরুতজকি আমার কাছে মনে হচ্ছে সমস্যাটি কেবল সহজ এবং সম্পূর্ণরূপে যে কোনও পরামিতিটির নাম অন্য সত্তার মতো সীমিত করা যায় না। আমি যদি কোনও প্যারামিটার নামের চারপাশে বর্গাকার বন্ধনী বা ডাবল উদ্ধৃতিগুলি গুটিয়ে রাখতে পারি, তবে আমি এই অক্ষরগুলির যে কোনও একটিতে, কোনও অবস্থাতেই রাখতে পারি। প্রশ্নটি পোস্টমুলেট করে যে আপনি প্যারামিটারের নামে ইউনিকোড অক্ষর ব্যবহার করতে পারবেন না এবং এটি স্পষ্টভাবে নয় not কিছু ইউনিকোড অক্ষর রয়েছে যা আপনি ব্যবহার করতে পারেন এবং কিছু ASCII অক্ষর যা আপনি পারবেন না
অ্যারন বারট্র্যান্ড

হ্যাঁ, আমি সম্মত হই যে যদি পরিবর্তনশীল / পরামিতি নাম এবং GOTOলেবেলগুলিকে সীমিত করার অনুমতি দেওয়া হয় তবে একমাত্র সীমাবদ্ধতার দৈর্ঘ্য হবে। আমি কেবল ধরে নিতে পারি যে এই কয়েকটি আইটেমকে পার্সিং এবং / অথবা হ্যান্ডলিংয়ের একটি ভিন্ন স্তরে ঘটে বা কিছু অন্যান্য বাধা রয়েছে যা সীমানা মানকে অকার্যকর করে দেয়। কমপক্ষে আমি আশা করি যে এটি নির্বিচারে বা তদারকি ছিল না।
সোলায়মান রুটজকি

(আমি যখন কিছুক্ষণ আগে জবাব দিয়েছিলাম তখন আপনার মন্তব্যে আপডেটটি দেখেনি)। হ্যাঁ, প্রশ্নটি ইঙ্গিত দেয় যে ওপি ইউনিকোড অক্ষর ব্যবহার করতে অক্ষম, তবে প্রশ্নের নামটি প্রযুক্তিগতভাবে ভুল কারণ সমস্ত নাম সর্বদা ইউনিকোড / এনভিচারচার থাকে। এটি একটি 8-বিট এনকোডিং যা এখানে ব্যবহার হচ্ছে না এর সাথে ASCII এর সাথে কোনও সম্পর্ক নেই। এখানে 8 টি অক্ষর ইউনিকোডের অক্ষর, এমনকি কিছু 8-বিট কোড পৃষ্ঠাতে উপস্থিত থাকলেও। আমি আমার উত্তরে যেমনটি ব্যাখ্যা করেছি, কোন অক্ষরগুলি ব্যবহার করা যেতে পারে তা কোনটি is_alphabeticবা তার সাথে ট্যাগ হয়েছে numeric_type=decimal
সলোমন রুটজকি

আমি সঞ্চিত প্রোকগুলি দেখেছি যা পূতে পূর্ণ ছিল তবে এর নাম কখনও রাখেনি!
মিচ গম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.