C# 中的数据库操作~存储过程篇Mysql SqlServer
Mysql
存储过程查询方式:
public NetPort GetNetdevicePortName(string uuid)
{
var ret = new NetPort();
try
{
MySqlDataReader myreader = null;
MySqlCommand myCommand = null;
using (MySqlConnection connection = new MySqlConnection(_connectionMysqlString))
{
connection.Open();
myCommand = new MySqlCommand();
myCommand.Connection = connection;
myCommand.CommandText = "Pro_GetNetdevice_Typename";
myCommand.CommandType = CommandType.StoredProcedure;
MySqlParameter uuidParameter = new MySqlParameter("?uuid", MySqlDbType.String);//mysql的存储过程参数是以?打头的!!!!
uuidParameter.Value = uuid;
myCommand.Parameters.Add(uuidParameter);
myreader=myCommand.ExecuteReader();
List<string> PortNames = new List<string>();
List<string> FeatureIds = new List<string>();
while (myreader.Read())
{
PortNames.Add(myreader["type_name"].ToString());
FeatureIds.Add(myreader["featureid"].ToString());
}
ret.PortNames = PortNames;
ret.FeatureIds = FeatureIds;
return ret;
}
}
catch (Exception ex)
{
_log.Error("查询端口失败" + ex);
return null;
}
}
SQL server
普通数据库操作
var ret = new List<ChartConfig>();
try
{
using (SqlConnection conn=DbHelper.GetConnection())
{
conn.Open();
string sql = "SELECT * FROM Netdevice_DetailView_Config where Category=@category";
SqlCommand command = conn.CreateCommand();
command.CommandType = CommandType.Text;
command.CommandText = sql;
command.Parameters.Add("@Category",SqlDbType.VarChar);
command.Parameters["@Category"].Value = category;
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
var Node = new ChartConfig
{
Category = reader["Category"].ToString(),
FeatureIds = Array.ConvertAll(reader["FeatureId"].ToString().Split(','), new Converter<string, int>(int.Parse)),
FeatureNames = reader["FeatureName"].ToString().Split(','),
Title = reader["TitleFormat"].ToString()
};
ret.Add(Node);
}
return ret;
}
}
catch (Exception ex)
{
_log.Error("查询网络设备配置数据失败" + ex);
return null;
}
EF 调用SQL SERVER存储过程
using (var ctx = new busContext())
{
SqlParameter[] para = new SqlParameter[] {
new SqlParameter("@in_station_id",1),
new SqlParameter("@in_register_type",2)
};
var busDetails = ctx.Database.SqlQuery<BusDetail>("EXEC [dbo].[bus_message] @in_station_id,@in_register_type", para);
Console.WriteLine(busDetails.First().sname);
Console.ReadLine();
}
待更新,mysql普通操作,sqlserver调用存储过程
C# 中的数据库操作~存储过程篇Mysql SqlServer的更多相关文章
- android中的数据库操作(转)
android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库 an ...
- android中的数据库操作(SQLite)
android中的数据库操作 android中的应用开发很难避免不去使用数据库,这次就和大家聊聊android中的数据库操作. 一.android内的数据库的基础知识介绍 1.用了什么数据库 an ...
- CI中的数据库操作以及AR连贯操作
要使用CI中的数据库操作,首先我们应该在CI的 application/config/databass.php 文件中配置数据库信息,通常就是配置主机名,用户名,密码,数据库名,表前缀(dbprefi ...
- Android中SQLite数据库操作(1)——使用SQL语句操作SQLite数据库
下面是最原始的方法,用SQL语句操作数据库.后面的"Android中SQLite数据库操作(2)--SQLiteOpenHelper类"将介绍一种常用的android封装操作SQL ...
- JSP中的数据库操作,MySQL基础操作(一)
一.JDBC JDBC(java data base concectivity),是一种用于执行SQL语句的java API,可以为多种关系库提供统一访问. 通常使用JDBC完成以下操作: 1)同数据 ...
- 我的Android六章:Android中SQLite数据库操作
今天学习的内容是Android中的SQLite数据库操作,在讲解这个内容之前小编在前面有一篇博客也是讲解了SQLite数据库的操作,而那篇博客的讲解是讲述了 如何在Window中通过DOM来操作数据库 ...
- C#---数据库访问通用类、Access数据库操作类、mysql类 .[转]
原文链接 //C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using Sy ...
- C#---数据库访问通用类、Access数据库操作类、mysql类 .
//C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using System. ...
- phpcms v9 中的数据库操作函数
1.查询 $this->select($where = '', $data = '*', $limit = '', $order = '', $group = '', $key='') 返回 ...
随机推荐
- C#3.0新增功能09 LINQ 标准查询运算符 03 按执行方式的分类
连载目录 [已更新最新开发文章,点击查看详细] 标准查询运算符方法的 LINQ to Objects 实现主要通过两种方法之一执行:立即执行和延迟执行.使用延迟执行的查询运算符可以进一步分为两种 ...
- 简单web网页与SSM后台交互
简单web网页与SSM后台交互 情况说明 如今,已经搭建好SSM后台开发环境,并且可以经由postman工具测试成功.现在尝试写出web前端网页,通过实现简单的提交.注册.查询功能来加深对前后端数据传 ...
- CGI,WSGI区别
WSGI 参考link:https://jingtyu.gitbooks.io/learning-openstack/content/351-usgi.html(本人的gitbook) 个人理解: w ...
- 上传及下载github项目
1.上传本地项目 git init //把这个目录变成Git可以管理的仓库 git add README.md //文件添加到仓库 git add . //不但可以跟单 ...
- [ PyQt入门教程 ] Qt Designer工具的布局管理
这节课很重要..界面整洁美观与否就看布局了..这里讲布局方法,至于设计的天赋与最终界面的美感那就看造化了.. 本文主要讲述Qt Designer工具实现界面控件布局管理,就是排列组合控件.包括水平布局 ...
- web设计_3_可伸缩的导航栏
1. HTML5构建一个选项卡,需要<nav>标签包围一个无序列表,也可以添加role属性告诉辅助设备(如屏幕阅读器)这个元素所扮演的角色. 绝对不要基于图片的导航,对搜索引擎不友好,更新 ...
- AbstractList
概述 此类提供 List 接口的骨干实现,以最大限度地减少实现“随机访问”数据存储(如数组)支持的该接口所需的工作.对于连续的访问数据(如链表),应优先使用 AbstractSequentialLis ...
- 那些年,想和你一起认识的SpringCloud Eureka
前几天鲁班LB跟我说:你玩把游戏都要半个钟啦,为何不用这时间来看看书,如果涨工资还可以帮我买个皮肤. 面对如此合理的这需求,但我不以为然,事实上并不是我不想学习,而是 ↓ 实力不允许呀~ 直到有一天, ...
- Web Worker 多线程
Web Workers多线程 1 浏览器把所有事件都通过操作系统安排到事件队列中(例如:你去一个·窗口买菜,需要排队):浏览器使用单线程处理队列中的事件和执行用户代码(也就是单线程:web work ...
- TestNg中的断言你真的了解吗
前言 在执行自动化测试脚本的时候,我们需要自动判断测试脚本执行完成后的实际结果是否与预期结果一致,这个时候就需要在程序运行之前写入断言,判断当前程序执行后是否正常. 关于TestNG断言分为两种: 软 ...