2010-08-24 13 views
15

मैंने SQL 2008 डेटाबेस में अरबी स्ट्रिंग को स्टोर करने का प्रयास किया लेकिन यह "प्रश्न चिह्न" में परिवर्तित क्यों हुआ? और मुझे क्या करना चाहिये ?SQL डेटाबेस में स्टोर अरबी

+0

का मिलान यह है है बनाते हैं mysql डेटाबेस या मेरा एसक्यूएल डेटाबेस? – Kashif

+0

वर्ग 2008 डेटाबेस मेरे एसक्यूएल इस वाक्यविन्यास गलती के लिए खेद नहीं है – kartal

+0

क्या आप अरबी अक्षरों को '(var) char' या 'n (var) char' के कॉलम में स्टोर करने का प्रयास कर रहे थे? –

उत्तर

43

आप अपने varchar/चार स्तंभों के लिए एक अरबी मिलान चुन सकते हैं या यूनिकोड (nchar/nvarchar)

CREATE TABLE #test 
(
col1 VARCHAR(100) COLLATE Latin1_General_100_CI_AI, 
col2 VARCHAR(100) COLLATE Arabic_CI_AI_KS_WS, 
col3 NVARCHAR(100) 
) 
INSERT INTO #test VALUES(N'لا أتكلم العربية',N'لا أتكلم العربية',N'لا أتكلم العربية') 

SELECT * FROM #test 

रिटर्न उपयोग करने की आवश्यकता

col1       col2       col3 
------------------------------ ------------------------------ ------------------------------ 
?? ????? ???????    لا أتكلم العربية    لا أتكلم العربية 

अरबी collations की एक सूची देख

उपयोग करने के लिए
SELECT name, description 
FROM fn_helpcollations() 
WHERE name LIKE 'Arabic%' 
+0

आपको बहुत धन्यवाद – kartal

+3

आप बहुत अच्छे हैं !! बहुत सराहना करो !! मैं आपके ब्लॉग में अपना जवाब जोड़ने जा रहा हूं। –

+0

यूनिकोड डेटा प्रकारों (nchar/nvarchar) का उपयोग करके बहुत अधिक था, बहुत धन्यवाद मार्टिन – newComer

-6

ओरीकल ओरेकल में अरबी स्ट्रिंग को स्टोर करना आसान है। इस कोड का प्रयोग करें:

declare @P_CUSTOMER_NAME nchar(50) 
set @P_CUSTOMER_NAME2=N'أختبار' 

उपर्युक्त ओरेकल में बस ठीक से बचाएगा।

+1

आपका उत्तर ओरेकल का उल्लेख क्यों करता है? – Ben

+2

@ अक्रम, कृपया प्रश्न पढ़ें। – Storm

1

आप के बजाय डेटाबेस में प्रत्येक स्तंभ के लिए बदलने की डेटाबेस स्तर पर मिलान बदल सकते हैं:।

USE master; 
GO 
ALTER DATABASE TestDB 
COLLATE Arabic_CI_AI; 
GO 
2

तालिका में डालने (स्तंभ) मूल्यों (एन 'xxx'))

आप स्ट्रिंग से पहले एन रखना चाहिए यह यूनिकोड

6

आप क्या करना है सब के सब करना है यह सुनिश्चित करने के

0 कि

column Data typenvarchar()

enter image description here

उसके बाद मैं कोई समस्या नहीं के साथ अरबी डाला

enter image description here

0

सुनिश्चित करें कि आपके सभी तालिकाओं और varchar कॉलम utf8_general_ci

संबंधित मुद्दे