ලේසියෙන්ම හොයාගන්න මෙතනින්

SQL Server database එකට සිංහලෙන් දත්ත ඇතුලත් කිරීම.

ඕනෑම SQL Server, MySQL software වල database එකට Unicode දත්ත, අකුරු ඇතුලත් කිරීම සඳහා යොදාගන්නේ NVARCHAR කියන data type එකයි. එය සාමාන්‍ය varchar data type එක භාවිතා කරන අයුරින්ම table create කිරීමේදී භාවිතා කල හැක. නමුත් එයට data assign කිරීමේදී පොඩි වෙනසක් සිදුකරන්නට තිබේ. N අකුර මුලට යොදා single quote තුල අවශ්‍ය text එක ලිවීමයි. තවත් විදියක් ....
CREATE TABLE hansa(
nic VARCHAR(10) PRIMARY KEY,
name NVARCHAR(50)
);

INSERT INTO hansa VALUES ('712004212V', N'හංස අමරසේකර');
INSERT INTO hansa VALUES ('201111240V', N'කොහොම හරි ගොඩ යන්නත් එපැයිනේ');

SELECT * FROM hansa;
SELECT nic FROM hansa WHERE name=N'හංස අමරසේකර';

SQL Collate යන්න භාවිතා කර, 
Collate is a clause that can be applied to a database definition or a column definition to define the collation, or to a character string expression to apply a collation cast.

CREATE TABLE hansa2(
nic VARCHAR(10) PRIMARY KEY,
name NVARCHAR(50)  COLLATE Indic_General_100_BIN
);



වැඩිදුර  විස්තර සඳහා මේ වෙබ් අඩවි වෙත පිවිසෙන්න.

2 comments :

  1. LOL Machoo bageta igenagena kiyala denna yanna epa.
    Ex UNICODE Table creating ~
    CREATE TABLE fablk_users(
    user_id int NOT NULL AUTO_INCREMENT,
    PRIMARY KEY (user_id),
    username varchar(50) NOT NULL,
    UNIQUE KEY (username),
    fullname varchar(100) NOT NULL,
    email varchar(200) NOT NULL,
    UNIQUE KEY (email),
    gender tinyint NOT NULL,
    bdate bigint NOT NULL,
    pass varchar(200) NOT NULL,
    pass_sault varchar(20) NOT NULL,
    reg_date bigint NOT NULL,
    reg_ip varchar(15) NOT NULL,
    last_act bigint NOT NULL,
    city varchar(80) NULL,
    country varchar(100) NULL,
    school varchar(100) NULL,
    about text NULL,
    prof_pic text NULL,
    mobile_number bigint NULL,
    address text NULL,
    status text NULL
    )CHARACTER SET utf8 COLLATE utf8_unicode_ci;

    ReplyDelete
  2. එකම වැඩේ කරන්න කිහිප විදියක් තියෙන්න පුළුවන්. බාගෙට ඉගෙන ගෙන තියෙන්නේ කවුද කියල ඔයාම බලාගන්න ඕවට C# project එකක ඉදන් ඔය දාලා තියෙන table එකට data insert කරද්දී. මං දාන හැම දේම Test කරලා, මම හොදට ඉගෙන ගෙන තමා දාන්නේ. nvarchar භාවිතා කරලත් මේ දේම තමා කරන්නේ.

    ReplyDelete