【问题标题】:Issue Converting varchar to nvarchar mysql问题将 varchar 转换为 nvarchar mysql
【发布时间】:2016-03-18 00:18:37
【问题描述】:

对不起,如果这是一个简单的问题,我从 SQL Server 来到 MySQL。

当我执行我的 create 语句时,它包含 nvarchar 但作为 varchar 提交到数据库。即使在我之后的更改声明中,该列也根本没有改变。排序规则或数据库引擎有什么不同吗?

在执行期间,除了列更改数据类型的事实之外,我没有遇到任何结果问题。我附上了我的活动截图http://screencast.com/t/wc94oei2

我无法通过 Google 搜索找到有类似问题的人

【问题讨论】:

  • 您应该展示一些代码、查询和/或表架构。这将有助于我们了解问题的根源。
  • 我刚刚创建了像你一样的表,它被描述为 varchar,但是当我使用 'nvarchar' 开始更改表时,我收到消息说没有任何改变,然后当我'描述'表时它仍然是 varchar .另一方面,当我创建 varhar 列然后运行同一个 alter table 时,我收到一条消息,指出某些内容已更改,但在“describe”之后一直是“varchar”。所以我认为它只是简单地调用 varchar,不管它是 varchar 还是 nvarchar。
  • @guillaume 我在截屏视频中做,但我可以做一些类似 CREATE TABLE test ( test nvarchar(50) ) 的事情。但我想我知道这个问题,你可以选择做 nvarchar,但 mysql 将它保存为 varchar,如 varchar(500) CHARACTER SET utf8。由于我们将 nvarchar 用于 utf-8。但是当您查看工作台时,您只会看到它保存为 varchar。有点混乱
  • 直接粘贴问题中的代码

标签: mysql


【解决方案1】:

你的意思是,这个..

创建表stars ( idstars int(11) NOT NULL AUTO_INCREMENT, Name nvarchar(200) 默认为空, 主键 (idstars), 唯一键Name_UNIQUE (Name) ) ----转向--- 创建表stars ( idstars int(11) NOT NULL AUTO_INCREMENT, Name varchar(200) 默认为空, 主键 (idstars), 唯一键 Name_UNIQUE (Name) )

【讨论】:

    猜你喜欢
    • 2013-04-07
    • 2011-12-11
    • 2020-03-10
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 2014-05-07
    • 1970-01-01
    相关资源
    最近更新 更多