English 中文(简体)
Storing special characters in database
原标题:

Can somebody provide some best practices when storing special characters such as the trademark (tm or r) or copyright (c)? I am storing them in a varchar field with other text in SQL Server, and displaying on an ASP.NET webpage. Right now we are storing the special character itself and displaying that.

Thanks for any help!

最佳回答

Just use the HTML entities, such as ™ and © if you can.

There s no need to switch to nvarchar unless you have an explicit requirement to support Unicode.

问题回答

I am storing them in a varchar field ...

There s one problem, at least. For text that could have "special" characters, you need nvarchar.

Well, with those characters, generally you will render them as

©

So you don t need to do anything special in the DB, but you should be using the "N"-prefixed fields for DB strings, NChar, NVarChar, and so on.

This in an old question but it deserves a new answer: use UTF-8. Browsers, databases and web servers now all support UTF-8 encoding which means that you don t have to encode special characters (except as discussed here, and then, only on the way out).

There are some excellent reasons not to encode data in your database in this answer.





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

How to Add script codes before the </body> tag ASP.NET

Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...

Transaction handling with TransactionScope

I am implementing Transaction using TransactionScope with the help this MSDN article http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspx I just want to confirm that is ...

System.Web.Mvc.Controller Initialize

i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...

Microsoft.Contracts namespace

For what it is necessary Microsoft.Contracts namespace in asp.net? I mean, in what cases I could write using Microsoft.Contracts;?

Separator line in ASP.NET

I d like to add a simple separator line in an aspx web form. Does anyone know how? It sounds easy enough, but still I can t manage to find how to do it.. 10x!

热门标签