利用sql語句進行修改,舉例說明:
1、ALTER
TABLE
`test`
DEFAULT
CHARACTER
SET
utf8;該命令用於將表test的編碼方式改為utf8;
2、ALTER
TABLE
`test`
CHANGE
`name`
`name`
VARCHAR(36)
CHARACTER
SET
utf8
NOT
NULL;
該命令用於將表test中name欄位的編碼方式改為utf8
2. MsSQL中漢字默認編碼是UTF8還是GBK應該怎樣調整
編碼UNICODE,GBK,UTF-8的區別詳解
簡單來說,unicode,gbk和大五碼就是編碼的值,而utf-8,uft-16之類就是這個值的表現形式.而前面那三種編碼是一兼容的,同一個漢字,那三個碼值是完全不一樣的.如"漢"的uncode值與gbk
就是不一樣
3. sql修改表編碼的語句
1、修改my.ini文件來修改編碼:加上default-character-set=字元集(utf8.gbk.gb2312等)
2、命令行修改:alterdatabaseda_namedefaultcharacterset"charset';或setnames'charset';或;
參考:http://www.2cto.com/database/201406/307694.html
4. 如何改變sql server 2005資料庫的編碼方式為gbk形式
具體:
1.sp_helpsort
SELECT SERVERPROPERTY ('Collation')
查看排序規則.
應該字元集關.
2.更改伺服器排序規則
更改 SQL Server 2005 實例默認排序規則操作能比較復雜包括步驟:
確保具重新創建用戶資料庫及些資料庫所象所需全部信息或腳本
使用工具(例容量復制)導所數據
刪除所用戶資料庫
重新 setup 命令 SQLCOLLATION 屬性指定新排序規則 master 資料庫例:
復制代碼
start /wait setup.exe /qb INSTANCENAME=MSSQLSERVER REINSTALL=SQL_Engine REBUILDDATABASE=1 SAPWD=test SQLCOLLATION=SQL_Latin1_General_CP1_CI_AI
關重新 master 資料庫詳細信息請參閱何重新 SQL Server 2005 Master 資料庫
創建所資料庫及些資料庫所象
導入所數據
注意:
創建每新資料庫指定默認排序規則更改 SQL Server 2005 實例默認排序規則
3.設置更改資料庫排序規則
創建新資料庫使用列內容指定排序規則:
CREATE DATABASE 語句 COLLATE 句
SQL Server Management Studio.
SQL 管理象 (SMO) Database.Collation 屬性
未指定排序規則則使用伺服器排序規則
使用 ALTER DATABASE 語句 COLLATE 句更改用戶資料庫創建任何新象排序規則使用語句能更改任何現用戶定義表列排序規則使用 ALTER TABLE COLLATE 句更改些列排序規則
更改資料庫排序規則需要更改列內容:
資料庫默認排序規則新默認排序規則應用於資料庫續創建所列、用戶定義數據類型、變數參數根據資料庫定義象解析 SQL 語句指定象標識符使用新默認排序規則
系統表任何 char、varchar、text、nchar、nvarchar 或 ntext 列更改使用新排序規則
存儲程用戶定義函數所現 char、varchar、text、nchar、nvarchar 或 ntext 參數標量返值更改使用新排序規則
char、varchar、text、nchar、nvarchar 或 ntext 系統數據類型基於些系統數據類型所用戶定義數據類型更改使用新默認排序規則
SQL code :
1.資料庫字元集修改:
alter database dbname collate Chinese_PRC_CI_AS
2.
--1. 資料庫指定排序規則
CREATE DATABASE db COLLATE Chinese_PRC_CI_AS
GO
ALTER DATABASE db COLLATE Chinese_PRC_BIN
GO
/*====================================*/
--2. 表列指定排序規則
CREATE TABLE tb(
col1 varchar(10),
col2 varchar(10) COLLATE Chinese_PRC_CI_AS)
GO
ALTER TABLE tb ADD col3 varchar(10) COLLATE Chinese_PRC_BIN
GO
ALTER TABLE tb ALTER COLUMN col2 varchar(10) COLLATE Chinese_PRC_BIN
GO
/*====================================*/
--3. 字元變數參數應用排序規則
DECLARE @a varchar(10),@b varchar(10)
SELECT @a='a',@b='A'
--使用排序規則 Chinese_PRC_CI_AS
SELECT CASE WHEN @a COLLATE Chinese_PRC_CI_AS = @b THEN '@a=@b' ELSE '@a <>@b' END
--結:@a=@b
--使用排序規則 Chinese_PRC_BIN
SELECT CASE WHEN @a COLLATE Chinese_PRC_BIN = @b THEN '@a=@b' ELSE '@a <>@b' END
--結:@a <>@b
3.
表
ALTER TABLE tb
ALTER COLUMN colname nvarchar(100) COLLATE Chinese_PRC_CI_AS
--區寫
ALTER TABLE tb
ALTER COLUMN colname nvarchar(100) COLLATE Chinese_PRC_CS_AS
--區寫
資料庫
ALTER DATABASE database
COLLATE Chinese_PRC_CS_AS
--區寫
ALTER DATABASE database COLLATE Chinese_PRC_CI_AS --區寫
.安裝SQL選擇區寫
或安裝完重建mastar選擇區
C:/Program Files/Microsoft SQL Server/80/Tools/Binn/rebuildm.exe
二.sql server 8.0版本才7.0及其支持
alter database 資料庫 COLLATE Chinese_PRC_CS_AS
修改排序規則改寫敏排序規則
修改表用alter table語句
修改庫默認排序規則用alter datebase語句
修改整伺服器默認排序規則用Rebuildm.exe重建master庫
--指定排序規則
--示例
select replace('AbacB' collate Chinese_PRC_CS_AS_WS,'B','test')
--要求表支持,則建表指定排序規則,replace用寫排序規則
--示例
create table tb(a varchar(20) collate Chinese_PRC_CS_AS_WS)
insert tb values('Abac')
select replace(a,'a','test') from tb
drop table tb
指定排序規則即
Windows 排序規則名稱
COLLATE 句指定 Windows 排序規則名稱Windows 排序規則名稱由排序規則指示器比較風格構
語
< Windows_collation_name > :: =
CollationDesignator_ <ComparisonStyle>
< ComparisonStyle > ::=
CaseSensitivity_AccentSensitivity
[_KanatypeSensitive [_WidthSensitive ] ]
| _BIN
參數
CollationDesignator
指定 Windows 排序規則使用基本排序規則基本排序規則包括:
指定按字典排序應用其排序規則字母表或語言
用於存儲非 Unicode 字元數據代碼頁
例 Latin1_General 或文兩者都使用代碼頁 1252或土耳其文使用代碼頁 1254
CaseSensitivity
CI 指定區寫CS 指定區寫
AccentSensitivity
AI 指定區重音AS 指定區重音
KanatypeSensitive
Omitted 指定區寫KS 指定區假名類型
WidthSensitivity
Omitted 指定區寫WS 指定區寫
BIN
指定使用二進制排序序
目前查詢區要改免反悔查詢:
select * from a
/*
a_nam a_add
---------- ----------
1 aa
1 bb
2 cc
2 vv
2 kk
3 dd
3 ee
4 dd
5 ee
6 yy
6 yy
(11 row(s) affected)
*/
現我查詢a_add = 'aa''Aa'等等行
Example 1:
select * from a
where a_add collate Chinese_PRC_CS_AS_WS = 'aa'
/*
a_nam a_add
---------- ----------
1 aa
(1 row(s) affected)
*/
Example 2:
select * from a
where a_add collate Chinese_PRC_CS_AS_WS = 'Aa'
/*
a_nam a_add
---------- ----------
(0 row(s) affected)
*/
三.面記住用笨轉化ascii
select * from a
where
ascii(substring(a_add,1,1)) = ascii(substring('Aa',1,1))
and
ascii(substring(a_add,2,1)) = ascii(substring('Aa',2,1))
/*
a_nam a_add
---------- ----------
(0 row(s) affected)
*/
三:任何版本都
select * from a
where cast(a_add as varbinary(10))= cast('aa' as varbinary(10))
5. mysql用sql語句創建表和資料庫怎麼設置字元編碼'
方法如下:
我們先建一個DEMO表,來做我們今天的實現,建表語句如下:
CREATE TABLE
DEMO
(
NAME VARCHAR(50) COMMENT '姓名',
SEX CHAR(1) COMMENT '性別',
PRIMARY KEY (NAME)
)
ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='例子表';
並且select查詢一下,如下圖
6. 把SQL語句保存在記事本里,然後把語句復制粘貼進資料庫就出錯了,是編碼錯誤,怎麼改回來
那就是你
在安裝Mysql或者oracle的時候編碼沒有設置正確,你可以去
配置文件
里把編碼設置成gbk,或者重寫安裝一下(注意設置它的編碼形式不要都選擇默認)就可以了
7. mssql編碼轉換gbk
一種是在資料庫連接的時候設置 set names gbk一種是在資料庫中,直接改資料庫的編碼
8. 怎麼將sql語句從UTF-8編碼改成GBK編碼
這個和sql語句有什麼關系? 資料庫字元集的問題吧,UTF8的佔3個,GBK占兩個
9. 如何設置Mysql資料庫默認的字元集編碼為GBK
1、更改伺服器的編碼方式,在終端輸入以下命令:
mysqld
--character-set-server=gbk
--collation-server=gbk_chinese_ci;
2、更改某個資料庫的編碼方式
mysql
-u
root
-p
alter
database
character
set
gbk
collate
gbk_chinese_ci;
3、在創建資料庫時指定編碼:
mysql
-u
root
-p
create
database
db_name
character
set
gbk
collate
gbk_chinese_ci;
4、更改某個表的編碼方式
mysql
-u
root
-p
db_name
alter
table
table_name
convert
to
charachter
set
gbk
collate
gbk_chinese_ci;
5、在創建表時指定編碼方式
mysql
-u
root
-p
db_name
create
table
table_name
(....)
character
set
gbk
collate
gbk_chinese_ci;
6、更改某行的編碼方式
mysql
-u
root
-p
db_name
alter
table
table_name
modify
column_name
varchar(20)
character
set
gbk
collate
gbk_chinese_ci;
7、在創建列時指定編碼方式:
</pre><pre
name="code"
class="sql">mysql
-u
root
-p
db_name
create
table
table_name
(...,
col1
varchar(20)
character
set
gbk
collate
gbk_chinese_ci,
...)
character
set
utf8
collate
utf8_general_ci;