我想在mysql中存储以下表情符号
Emoticons Score
%-( , -1
%-) , 1
(-: , 1
:*( , -1 这是逗号分隔的文件。
我编写了以下代码来处理这个文件
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行“分数”列的超出范围值
谢谢你.
发布于 2013-04-27 14:37:26
您可能试图在数据库中的unsigned int 列中存储负数。。
您的代码是OK (int数据类型是有符号整数,因此它支持负数),但是您可以在某个地方使用无符号整数。
其他原因可能是数字太大了。
MSDN说:
整数变量存储为有符号32位(4字节)整数,其值范围为-2,147,483,648至2,147,483,647。
https://stackoverflow.com/questions/16249966
复制相似问题