.Net+MySQL组合开发(二) 数据访问篇
这里我们使用图形化操作的SQL Manager 2005 Lite for MySQL来建立数据,它的操作界面非常类似OFFICE软件,使用方便、很容量上手、下面开始建立数据库及表
单击"Creat New DataBase":新建DB
输入密码:
选择客户端编码为gb2312,防乱码;也可以在新建好的数据库右键选择"DataBase Registration Info"更改编码:
新建表:输入表名:
新建字段
点击加号,手动添加数据,点出对号,提交数据:
选择DDL选项,直接看到刚才操作的脚本;也可以不用上面的方式操作,直接写sql脚本来创建数据:
二、ADO.NET数据操作
推荐使用MySQL Connector Net 5.0.3
web.config添加连接字符串:
为了方便,把对数据的访问封装到一个类中:
2public int ExecuteSql(string strSql, MySqlParameter [] myPar)
3 {
4 try
5 {
6 myConnection.Open();
7 MySqlCommand cmd = new MySqlCommand(strSql, myConnection);
8 if (myPar != null)
9 {
10 foreach (MySqlParameter spar in myPar)
11 {
12 cmd.Parameters.Add(spar);
13 }
14 }
15 int result = cmd.ExecuteNonQuery();
16 myConnection.Close();
17 return result;
18 }
19 catch
20 {
21 return 0;
22 }
23 }
获取数据:
2 {
3 try
4 {
5 MySqlDataAdapter da = new MySqlDataAdapter(strSql, myConnection);
6 DataSet ds = new DataSet();
7 da.Fill(ds);
8 return ds;
9 }
10 catch
11 {
12 return null;
13 }
14 }
在页面中我们用一个gridview实现数据的读取、写入、编辑、删除等操作:
数据绑定:
2 protected void BindGrid()
3 {
4 DataSet ds = obj.GetDataSet("SELECT * FROM book ORDER BY bid");
5 GridView1.DataSource = ds;
6 GridView1.DataBind();
7 ds.Dispose();
8 }
添加数据:
2 MySqlParameter[] mysp =
3 {
4 new MySqlParameter ("?bname",MySqlDbType.VarChar ),
5 new MySqlParameter ("?author",MySqlDbType.VarChar),
6 new MySqlParameter ("?publish",MySqlDbType.VarChar)
7 };
8 mysp[0].Value = txtName.Text.Trim();
9 mysp[1].Value = txtAuthor.Text.Trim();
10 mysp[2].Value = txtPublish.Text.Trim();
11 if (obj.ExecuteSql(strSQL, mysp) == 1)
12 {
13 Response.Write("<script>alert('提交成功');</script>");
14 BindGrid();
15 txtName.Text = txtAuthor.Text = txtPublish.Text = "";
16 }
注意参数符号是"?"而不是"@",这一点不同于sql server
其它编辑等操作代码等请下载文件
下载详细完整的代码文件/Files/chy710/MySQL_ADONET.rar
下篇预告:mysql开发中的乱码问题
.Net+MySQL组合开发(二) 数据访问篇相关推荐
- 利用dao传值给mysql_koa+mysql+vue+socket.io全栈开发之数据访问篇
后端搭起大体的框架后,接着涉及到的就是如何将数据持久化的问题,也就是对数据库进行 CURD 操作. 关于数据库方案, mongodb 和 mysql 都使用过,但我选用的是 mysql,原因: 目前为 ...
- 项目架构开发:数据访问层之Cache
数据访问层简单介绍 数据访问层,提供整个项目的数据访问与持久化功能.在分层系统中所有有关数据访问.检索.持久化的任务,最终都将在这一层完成. 来看一个比较经典的数据访问层结构图 大概可以看出如下信息 ...
- jdbc和mysql面试题_JDBC数据访问技术面试题(附答案)
随着移动互联网的发展,从事计算机行业的人越来越多,这些人中,选择java的人占了很大一部分比例,相信有很多的人都有面试的需要.在java面试中,少不了的内容就是面试题了,今天来说一说JDBC数据访问技 ...
- AIR-Android开发外部数据访问与存储
http://blog.chinaunix.net/uid-10062010-id-3174877.html AIR程序大多需要在本地缓存一些数据,这些数据是否能正确存储关系到AIR是否真正可用,本文 ...
- MySQL数据库实验二 数据基本查询
★观前提示:本篇内容为mysql数据库实验,代码内容经测试过,可能一小部分有所疏漏,也有会不符合每个人实验的要求的地方,因此以下内容建议仅做思路参考,. 一.实验目的 1.掌握SQL查询语句的一般格式 ...
- defaultcharacterset mysql_C# .Net+MySQL组合开发Character set ‘gbk’ is not supported的解决方法...
所用工具MySQL5.022 VS2005 Team Suite MySQL Connector Net 5.0.3 EMS SQL Manage 2005 For MySQL使用过MySQL的朋友都 ...
- 【零基础QQ机器人开发二】服务器篇
前言:由于上篇聊天机器人的文章阅读量挺高的,所以再出一篇上云的教程,,通过云服务器我们可以把程序挂在服务器,实现程序的二十四小时工作 环境准备 我们需要准备一台云服务器用于程序上云,由于云服务器需要购 ...
- 【VC++游戏开发#二】2D篇 —— 平滑的幻灯片放映效果
本文由BlueCoder编写 转载请说明出处: http://blog.csdn.net/crocodile__/article/details/12975077 我的邮箱:bluecoder@y ...
- 002 第一季SpringBoot2核心技术-核心功能:配置文件、Web开发(原生组件)、数据访问、单元测试、指标监控、原理解析:@Value、命令行参数、手动获取bean、自定义starter
三.核心技术之- ->核心功能 1. 配置文件 1.1 文件类型 1.1.1 properties 同以前的properties用法 优先级高于yml的方式. 1.1.2 yaml 1) 简介 ...
最新文章
- switch case
- C#7.0连接MySQL8.0数据库的小笔记
- BZOJ5249: [2018多省省队联测]IIIDX(线段树 贪心)
- [转载]Mac使用vim命令修改配置文件内容
- 如何遍历给定目录中的文件?
- Java: 将中文省市名转换为指定格式拼音
- EPLAN如何保护电气图纸
- springboot集成ueditor百度富文本编辑器及上传图片到oss服务器
- 安卓漫漫路之实现简单的弹幕.
- 软件测试的系统代码,软件测试工程师管理系统代码
- GIT无法提交到码云。原因可能是所在提交位置不对
- Python手册(Machine Learning)--statsmodels(Regression)
- (数字ic验证)从零开始的apb_watchdog验证模块搭建(二、apb直接发送激励与寄存器模型加入)
- 大数据 - 大数据开发技术课程总结(未完)
- 07_Numpy渐变图片的生成
- 解析XML文件(字符串)的两种方法-----SAXReader 与 DocumentHelper
- [Done]FindBugs: boxing/unboxing to parse a primitive
- postfix中recipient/client/sender/helo四者的区别转载
- iOS、mac开源项目及库
- 中国少儿模特明星盛典 《荣耀王者》主题曲 即将全网发布
热门文章
- 本地仓库推送到远程仓库:fatal: refusing to merge unrelated histories
- Ubuntu 16.04 安装网易云音乐
- 排他网关(ExclusiveGateWay)
- 20165235 Java第一周学习总结
- 2017.8.23创业项目方向
- page,client,offset区别
- iscroll 4.0 滚动(水平和垂直)
- EXT.NET复杂布局(四)——系统首页设计(上)
- poj 2696 A Mysterious Function
- sql 写query_为什么需要动态SQL