- ·上一篇:座位分布图怎么做excel表格
- ·下一篇:excel表格怎么批量去除括号
excel表格怎么改字符集
1.MySQL怎么修改表格的字符集,怎么修改某个字段的字符集
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;警告:上述操作是在字符集中转换列值。
如果用户在字符集(如 gb2312)中有一个列,但存储的值使用的是其它的一些不兼容的字符集(如 utf8),那么该操作将不会得到用户期望的结果。在这种情况下,用户必须对每一列做如下操作: ALTER TABLE t1 CHANGE c1 c1 BLOB; ALTER TABLE t1 CHANGE c1 c1 TEXT CHARACTER SET utf8; 这样做的原因是:从 BLOB 列转换或转换到 BLOB 列没有转换发生。
如果用户指定以二进制进行 CONVERT TO CHARACTER SET,则 CHAR、VARCHAR 和 TEXT 列将转换为它们对应的二进制字符串类型(BINARY,VARBINARY,BLOB)。这意味着这些列将不再有字符集,随后的 CONVERT TO 操作也将不会作用到它们上。
如果仅仅改变一个表的缺省字。 那么该操作将不会得到用户期望的结果,用户必须对每一列做如下操作,BLOB)。
这意味着这些列将不再有字符集; ALTER TABLE t1 CHANGE c1 c1 TEXT CHARACTER SET utf8:上述操作是在字符集中转换列值。在这种情况下。
如果仅仅改变一个表的缺省字符集. ADD column)。如果用户在字符集(如 gb2312)中有一个列,可使用下面的语句,如果没有指定字符集;警告: ALTER TABLE t1 CHANGE c1 c1 BLOB; 这样做的原因是,VARBINARY,但存储的值使用的是其它的一些不兼容的字符集(如 utf8)。
如果用户指定以二进制进行 CONVERT TO CHARACTER SET:从 BLOB 列转换或转换到 BLOB 列没有转换发生、VARCHAR 和 TEXT 列将转换为它们对应的二进制字符串类型(BINARY。当向一个表里添加一个新的列时,随后的 CONVERT TO 操作也将不会作用到它们上.: ALTER TABLE tbl_name DEFAULT CHARACTER SET charset_name; DEFAULT是可选的,则就采用缺省的字符集(例如当ALTER TABLE .ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name,则 CHAR 展开。
2.MySQL如何修改表格的字符集,搜狗问问
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;警告:上述操作是在字符集中转换列值。如果用户在字符集(如 gb2312)中有一个列,但存储的值使用的是其它的一些不兼容的字符集(如 utf8),那么该操作将不会得到用户期望的结果。在这种情况下,用户必须对每一列做如下操作:
ALTER TABLE t1 CHANGE c1 c1 BLOB;
ALTER TABLE t1 CHANGE c1 c1 TEXT CHARACTER SET utf8;
这样做的原因是:从 BLOB 列转换或转换到 BLOB 列没有转换发生。
如果用户指定以二进制进行 CONVERT TO CHARACTER SET,则 CHAR、VARCHAR 和 TEXT 列将转换为它们对应的二进制字符串类型(BINARY,VARBINARY,BLOB)。这意味着这些列将不再有字符集,随后的 CONVERT TO 操作也将不会作用到它们上。
如果仅仅改变一个表的缺省字符集,可使用下面的语句:
ALTER TABLE tbl_name DEFAULT CHARACTER SET charset_name;
DEFAULT是可选的。当向一个表里添加一个新的列时,如果没有指定字符集,则就采用缺省的字符集(例如当ALTER TABLE 。 ADD column)。
3.怎样更新系统表(props$)修改字符集?
天在Itpub上再次看到字符集变化导致的问题,作者给出的案例是这样的: 数据库为 9。
2。0。
7。0 ,OS : Solaris Operating System (SPARC 64-bit) 起因是这样的,我的一客户那里UPS出现故障导致系统宕机,然后起来,大约过了10来分钟,突然操作系统找不到磁盘又一次宕机,然后再起来,有用户报一个SQL用不上索引。
这个SQL是这样的:select * from ww。test20060504 dg where dg。
user_number='7290' 第一个想法是给那个索引做分析,但还是不行,我们就对这个表做了一次分析,但执行计划没有什么改变 。我们尝试加提示(包括加 rule ),但也不行,用户反映是有一批这样类似的都用不到索引。
然后通过 10053 做 trace 居然发现优化器根本没有考虑索引。开始怀疑这个数据库的数据字典可能有问题。
我们只好用一个笨方法,将其中一个表导到测试库上去测试,在导出的过程中居然发现系统报错EXP-00056: ORACLE error 6552 encounteredORA-06552: PL/SQL: Compilation unit analysis terminatedORA-06553: PLS-553: character set name is not recognized 居然系统报字符集的错。 。
真是晕呀!我们马上仔细检查了一个 alter 文件发现了一条信息,系统在第一次宕机起来后就自已将 controlfile 中的字符集给更改了。
最后我们将系统中的字符集改回来系统就恢复正常了。警告日志中的信息是这样的:***ON: enabling tx recoveryMon Jun 5 09:52:52 2006Updating character set in controlfile to _dependency_tracking turned off (no async multimaster replication found) 其实这个信息是手工更新过数据库字符集后,重新启动,数据库比较数据库和控制文件信息,根据数据库字符集修改控制文件字符集导致的。
我在以前作过这样的测试,参考:/special/NLS_CHARACTER_SET_03。htm通过更新props$的方式修改字符集是非常危险的,我在以上的文章中有过详细说明,在Oracle8i中,如果修改了错误的字符集,那么重新启动后数据库将无法启动。
4.EXCEL中如何用公式修改一串字符中的某一位字符
假设字符22920130001在A1单元格。
那么在你需要的单元格里输入=REPLACE(A1,9,1,4) 就可以了
REPLACE函数的意义:
=REPLACE(old_text,start_num,num_chars,new_text)
翻译成中文就是:
=PEPLACE(旧数据所在单元格,开始的字符数,几个字符,新的文本)
比如=REPLACE(A1,9,1,4) 就代表把A1单元格里从第9位数1个字符的数据替换成4.