简体   繁体   中英

How I can obtain the collation of a specific table in a database?

How I can obtain the collation of a specific table in a database? Is it possible that a table have different collation in db?

Collation at the table level is on a per column basis, so it is possible to have a collation different than the database. If the collation is not defined at the column level, it defaults to the database collation setting.

SQL Server 2000:

SELECT c.name, 
       c.collation 
  FROM SYSCOLUMNS c
 WHERE [id] = OBJECT_ID('your_table_name')

SQL Server 2005+:

SELECT c.name, 
       c.collation_name
  FROM SYS.COLUMNS c
  JOIN SYS.TABLES t ON t.object_id = c.object_id
 WHERE t.name = 'your_table_name'

There is no such thing as a collation for a table.

A database has a default collation (which defaults to the collation for the server).

The default collation for the database will be applied to any column you add to a table, UNLESS you explicitly specify a collation at the column level.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM