09/10/2018, 23:12

Cách đưa tiếng việt từ web vào CSDL?

Tôi có viết trang web cho nhập tiếng việt vào web. Sau đó dữ liệu này sẻ được lưu trong CSDL SQL, nhưng lưu vào CSDL thì không phải là tiếng việt nủa, nên khi đưa trở lại trang web không còn ra tiếng việt nưa. Ai biết giúp mình với, cám ơn!
MichaelTuanAnh viết 01:17 ngày 10/10/2018
bạn phải nói rõ là bạn dùng php hay .net hay jsp? và cơ sở dữ liệu là gì?
xuanlamk1a viết 01:25 ngày 10/10/2018
ASP.NET thì sao nhỉ? bạn có thể chỉ giúp mình đc không, nói chung về cơ bản thì nó cũng là mã hóa UNICODE nhưng nhiều khi sao lưu lại hỏng hết, mình thiết nghĩ nếu có thể lưu vào CSDL đc = tiếng việt thì sẽ tránh dc các lỗi về font chữ, nếu có thể bạn send bài hướng dẫn vào email mình nhé
xuanlamk1a@yahoo.com
dotnet viết 01:22 ngày 10/10/2018
nếu là ASP.NET thì bạn phải sử dụng SqlParameter để có thể lưu dữ liệu Unicode vào Database. Ví dụ :

public static void AddData(string data)
{
SqlConnection aCon = new SqlConnection(connectionString);
aCon.Open();
SqlCommand aCom = new SqlCommand("insert into Test values (@Data)", aCon);
aCom.Parameters.Add("@Data",SqlDbType.NVarChar,100 );
aCom.Parameters["@Data"].Value = data;
aCom.ExecuteNonQuery();
aCon.Close();
}
namtuocbongtoi viết 01:23 ngày 10/10/2018
mình thấy cứ chuyển sang UTF-8 là ổn
ktoon viết 01:16 ngày 10/10/2018
Nếu là DB SQL thì trong câu lệnh chèn dữ liệu vào Database, bạn phải thêm ký tự 'N' vào trước field dữ liệu là được.
VD : insert into table value (N'textfield1', N'textfield2')
nminhkha viết 01:17 ngày 10/10/2018
Quote Được gửi bởi ktoon
Nếu là DB SQL thì trong câu lệnh chèn dữ liệu vào Database, bạn phải thêm ký tự 'N' vào trước field dữ liệu là được.
VD : insert into table value (N'textfield1', N'textfield2')
Và datatype của field đó trong SQL phải là dạng : NText, NVarchar ,....

P/S : Theo tui thì nên dùng store procedure để insert vào DB
namtuocbongtoi viết 01:15 ngày 10/10/2018
sao ko chuyển qua UTF-8 cho đơn giản nhỉ.
lưu unicode chi cho mệt
Bài liên quan
0