加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – ALTER语句:为什么VARCHAR2(50 BYTE)而不是VARCHAR2(50 C

发布时间:2020-12-12 08:54:58 所属栏目:MsSql教程 来源:网络整理
导读:参见英文答案 varchar2(n BYTE|CHAR) default - CHAR or BYTE2个 我执行了以下(Oracle 11g)SQL语句,将现有列的长度从VARCHAR2(20 CHAR)增加到VARCHAR2(50 CHAR): ALTER TABLE USERX.MY_TABLE MODIFY (LASTNAME VARCHAR2(50)); 它没有发生任何事故,但是当我查
参见英文答案 > varchar2(n BYTE|CHAR) default -> CHAR or BYTE2个
我执行了以下(Oracle 11g)SQL语句,将现有列的长度从VARCHAR2(20 CHAR)增加到VARCHAR2(50 CHAR):
ALTER TABLE USERX.MY_TABLE MODIFY (LASTNAME VARCHAR2(50));

它没有发生任何事故,但是当我查看新的数据类型列时,我看到:VARCHAR2(50 BYTE)而不是VARCHAR2(50 CHAR).

我的问题是:

>为什么选择BYTE而不是CHAR?我做错了什么?
>如何将列的长度修改为VARCHAR2(100 CHAR)?

解决方法

回答自己(感谢提示 by this other answer):

我本应该执行:

ALTER TABLE USERX.MY_TABLE MODIFY (LASTNAME VARCHAR2(50 CHAR));

(注意50后的额外CHAR)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读