asp.net mysql 创建变_asp.net中通过ALinq让Mysql操作变得如此简单

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using MySql.Data.MySqlClient;

namespace CimDataImport

{

public class TestCharacter

{

public const string mysqlConnection = "User Id=root;Host=localhost;Database=cim;password=root";

///

/// 添加数据

///

///

public int Add(UserBase entity)

{

string sql = "INSERT INTO cimuser (userid,userNickName) VALUE (@userid,@userNickName)";

using (MySqlConnection mycn = new MySqlConnection(mysqlConnection))

{

mycn.Open();

MySqlCommand command = new MySqlCommand(sql, mycn);

command.Parameters.AddWithValue("@userid", entity.UserId);

command.Parameters.AddWithValue("@userNickName",entity.UserNickName);

return command.ExecuteNonQuery();

}

}

///

/// 修改数据

///

///

///

public int Update(UserBase entity)

{

string sql = "UPDATE cimuser SET [email protected] WHERE [email protected]";

using (MySqlConnection mycn = new MySqlConnection(mysqlConnection))

{

mycn.Open();

MySqlCommand command = new MySqlCommand(sql, mycn);

command.Parameters.AddWithValue("@userid", entity.UserId);

command.Parameters.AddWithValue("@userNickName", entity.UserNickName);

return command.ExecuteNonQuery();

}

}

///

/// 删除数据

///

///

///

public int Delete(int primaryKey)

{

string sql = "DELETE FROM cimuser WHERE [email protected]";

using (MySqlConnection mycn = new MySqlConnection(mysqlConnection))

{

mycn.Open();

MySqlCommand command = new MySqlCommand(sql, mycn);

command.Parameters.AddWithValue("@userid", primaryKey);

return command.ExecuteNonQuery();

}

}

///

/// 根据主键查询

///

///

///

public UserBase Get(int primaryKey)

{

string sql = "SELECT userid,userNickName FROM cimuser where [email protected]";

using (MySqlConnection mycn = new MySqlConnection(mysqlConnection))

{

mycn.Open();

MySqlCommand command = new MySqlCommand(sql, mycn);

command.Parameters.AddWithValue("@userid", primaryKey);

MySqlDataReader reader = command.ExecuteReader();

UserBase userBase = null;

if (reader.Read())

{

userBase = new UserBase();

userBase.UserId = Convert.ToInt32(reader["userid"]);

userBase.UserNickName = reader["userNickName"] == DBNull.Value ? null : reader["userNickName"].ToString();

}

return userBase;

}

}

///

/// 查询集合

///

///

public IList GetList()

{

string sql = "SELECT userid,userNickName FROM cimuser limit 1,10";

using (MySqlConnection mycn = new MySqlConnection(mysqlConnection))

{

mycn.Open();

MySqlCommand command = new MySqlCommand(sql, mycn);

MySqlDataReader reader = command.ExecuteReader();

IList list = new List();

UserBase userBase = null;

while (reader.Read())

{

userBase = new UserBase();

userBase.UserId = Convert.ToInt32(reader["userid"]);

userBase.UserNickName = reader["userNickName"] == DBNull.Value ? null : reader["userNickName"].ToString();

list.Add(userBase);

}

return list;

}

}

}

}

3. ALinq 让我变得如此简单

在Linq 没有现世之前,Ado.net 的数据库操作让我们感觉到编程的痛苦,每天重复着相同的数据库操作代码,后来千奇百怪的代码生成器让我们从中解脱出来,虽然有些代码生成器的确非常不错,但是心中始终觉得那些代码少了一些什么!

Linq TO SQL 推出之后,我们感觉到了.net 语法的甜,是甜到心里的那种甜,感觉自己从代码中彻底释放出来!可是Linq To SQL 只支持微软的 SQL Server 数据库。Alinq 是如此完美的解决了多类型数据库操作的问题,在操作SQL Server 数据上毫不逊色Linq to SQL,在Mysql,Oracle,Db2 等数据库操作上更甚一筹!

第一: 新建工程这里使用控制台程序第二:添加新建项  17ee1e921292bf31f9e3f845cf60380c.png 

第三: 新建数据库连接

e6adf203094bfd4378e909f25109b118.png

第四:添加Mysql数据库连接

5e1ccaebb4d0b4473e21cf41fdf0d177.png

第五:选择Mysql数据源

195ddb1ffb9f732d5a20c19271fee719.png

第六:更改数据源

1aed6b0b5c5dc4bbd354fdee7803aa2f.png

第七:输入Mysql服务名以及账号和密码

51f5b1635d279f9fd3bb5ac2f79a6fc8.png

第八:测试连接

a4a7c4b6351b6b7bad24b9098db6e067.png

第九:连接成功

695373586175548e3cb26a51b8c0479b.png

上述操作是必须在安装ADO.NET driver for MySQL 组件的情况下才能正常操作,否则第六步选择更改数据源的时候看不到MySql database 选项。    Linq to sql 对于大家来说已经很熟悉了,ALinq 的操作前面的文章也已经详细讲解过了。这里操作不做详细说明了!

4.   中文你让我如何说你

Mysql 数据库开源,更重要的是它能够运行在Linux系统中!在工作中将Sql server 数据库中的数据导入到Mysql 的时候,意想不到的事情发生了,中文在Mysql 中都变成了乱码。而且Mysql 是安装在Linux 系统上的。

Linux 中Mysql解决乱码问题方案以及操作步骤:

1.查找Mysql 下的.cnf 配置文件

在windows系统中安装mysql程序,其中保存保存数据的配置文件名为 my.ini

此文件存在于mysql安装目录下,使用记事本打开此文件修改内容如下:

将 default-character-set=utf8 (有两处)更改为 default-character-set=GBK 并且添加节点:character_set=gbk

98c256f2d87a36ab966ddbfa02c8e714.png

在Linux中首先查找mysql 的配置文件命令如下:

find -name *.cnf –print得到如下结果:

e120d118e7b65634a160927d9909e217.png

2. 将Mysql中的一个cnf文件复制到etc文件目录下,并且保存为my.cnf

在etc目录下查找my.cnf文件,如果此文件不存在则需要从1中查找的文件中my-large.cnf,

My-small.cnf,my-medium.cnf三个文件中复制一个到etc目录下面,并且保存my.cnf文件。

使用命令:

cp /usr/share/mysql/my-large.cnf /etc/

mv etc/my-large.cnf etc/my.cnf文件复制到特定目录,并且重新命名。

3. 修改my.cnf 配置文件

cd etc/进入etc目录下

vi my.cnf使用vi命令打开my.cnf文件

b81977a677e37b6d81f53f9d8bb1e03e.png

如果文件中存在此节点,则将编码方式修改为gbk

4. 重新启动服务

/etc/init.d/mysql restart重新启动mysql服务

5.  再次导入数据成功

原文:http://www.jb51.net/article/27627.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值