首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将表情符号存储在MYSQL列的范围外值中

将表情符号存储在MYSQL列的范围外值中
EN

Stack Overflow用户
提问于 2013-04-27 08:28:40
回答 1查看 263关注 0票数 2

我想在mysql中存储以下表情符号

代码语言:javascript
复制
   Emoticons                  Score    

    %-(          ,            -1
    %-)          ,             1
    (-:          ,             1
    :*(          ,            -1    

这是逗号分隔的文件。

我编写了以下代码来处理这个文件

代码语言:javascript
复制
private void button1_Click(object sender, EventArgs e)
        {
            string[] lines = File.ReadAllLines("D:\\EmoticonLookupTable.txt");
            foreach (var line in lines)
            {
                var data = line.Split(new[] { ',' }, 2);
                string  Emoticons  = data[0].Trim();
                int Score  = int.Parse(data[1].Trim());

                StoreRecord( Emoticons,Score);
            }
        }     

private void StoreRecord(string word,int Score)
        {
            var conStr = "server=localhost; database=zahid; password=zia; User Id=root;";
            using (var connection = new MySqlConnection(conStr))
            using (var command = connection.CreateCommand())
            {
                connection.Open();
                command.CommandText =
                @"INSERT INTO za 
            (Emoticons,Score) 
          VALUES 
            (@Emoticons,@Score)";
                command.Parameters.AddWithValue("@Emoticons", Emoticons);
                command.Parameters.AddWithValue("@Score", Score);

                command.ExecuteNonQuery();
            }
        }    

但是这段代码给出了以下错误。

误差

第1行“分数”列的超出范围值

谢谢你.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-27 14:37:26

您可能试图在数据库中的unsigned int 列中存储负数。

您的代码是OK (int数据类型是有符号整数,因此它支持负数),但是您可以在某个地方使用无符号整数。

其他原因可能是数字太大了。

MSDN说:

整数变量存储为有符号32位(4字节)整数,其值范围为-2,147,483,648至2,147,483,647。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16249966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档