C#_数据库基本交互
//app.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<connectionStrings>
<add name="dbConnStr" connectionString="Data Source=服务器地址;Initial Catalog=数据库;User ID=账号(可以是sa);Password=密码"/>
</connectionStrings>
</configuration>
//content
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes; namespace DataBaseTest
{
/// <summary>
/// MainWindow.xaml 的交互逻辑
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
} private void Button_Click_1(object sender, RoutedEventArgs e)
{
using (SqlConnection conn = new SqlConnection("Data Source=xxx;Initial Catalog=xxx;User ID=sa;Password=xxx"))
{
conn.Open();
using(SqlCommand cmm = conn.CreateCommand())
{
//cmm.CommandText = "select * from T_Student";
//没有返回值
//cmm.ExecuteNonQuery();
//有一个返回值
//insert into T_Student(Name,Age) output inserted.Id values ('aaa',123);
// object o = cmm.ExecuteScalar();
//多个返回值
//using (SqlDataReader reader = cmm.ExecuteReader())
//{
// while(reader.Read())
// {
// MessageBox.Show(reader.GetString(1));
// }
//}
cmm.CommandText = "select * from T_Student where Name=@Name";
cmm.Parameters.Add(new SqlParameter("@Name", txtSearch.Text));
//查询输入内容
using (SqlDataReader reader = cmm.ExecuteReader())
{
while (reader.Read())
{
MessageBox.Show(reader.GetString(1));
}
} }
}
MessageBox.Show("successful");
} private void 离线数据集_Click(object sender, RoutedEventArgs e)
{
using (SqlConnection conn = new SqlConnection("Data Source=xxx;Initial Catalog=xxxx;User ID=sa;Password=xxx"))
{
conn.Open();
using (SqlCommand cmm = conn.CreateCommand())
{
cmm.CommandText = "select * from T_Student where Name=@Name";
cmm.Parameters.Add(new SqlParameter("@Name", txtSearch.Text)); //SqlDataAdapter是一个把查询结果填充到DataSet中
SqlDataAdapter adapt = new SqlDataAdapter(cmm);
//本地集合
DataSet dataset = new DataSet();
adapt.Fill(dataset); DataTable table = dataset.Tables[0]; DataRowCollection rows = table.Rows; for (int i = 0; i < rows.Count; i++)
{
DataRow row = rows[i];
int age = (int)row["Age"];
string name = (string)row["Name"];
MessageBox.Show("name: "+name+" age: "+age); }
}
}
} private void btnConStr_Click(object sender, RoutedEventArgs e)
{
//需要添加system.Configration reference
string connStr = ConfigurationManager.ConnectionStrings["dbConnStr"].ConnectionString;
MessageBox.Show(connStr);
//SqlHelper.ExecuteNonQuery("insert into T_Student(Name,Age) values ('eee',123)");
MessageBox.Show("succeed insert"); //DataSet dataset = new DataSet();
//using (SqlConnection conn = new SqlConnection(connStr))
//{
// conn.Open();
// using (SqlCommand cmm = conn.CreateCommand())
// {
// cmm.CommandText = "select * from T_Student where Name=@Name";
// cmm.Parameters.Add(new SqlParameter("@Name", txtSearch.Text)); // //SqlDataAdapter是一个把查询结果填充到DataSet中
// SqlDataAdapter adapt = new SqlDataAdapter(cmm);
// //本地集合 // adapt.Fill(dataset); // DataTable table = dataset.Tables[0]; // DataRowCollection rows = table.Rows; // for (int i = 0; i < rows.Count; i++)
// {
// DataRow row = rows[i];
// int age = (int)row["Age"];
// string name = (string)row["Name"];
// MessageBox.Show("name: " + name + " age: " + age); // }
// }
//} } private void Button_Click_2(object sender, RoutedEventArgs e)
{
//DataSet ds = SqlHelper.ExecuteDataSet("select * from T_Student");
//foreach (DataRow row in ds.Tables[0].Rows)
//{
// string name = (string)row["Name"];
// MessageBox.Show(name);
//}
DataTable ds = SqlHelper.ExecuteDataTable("select * from T_Student");
foreach (DataRow row in ds.Rows)
{
string name = (string)row["Name"];
MessageBox.Show(name);
}
}
}
}
C#_数据库基本交互的更多相关文章
- 随心测试_数据库_001<论数据的重要性>
测试工作中,数据的重要性 软测工程师:作为综合运用多学科知识,保障软件质量的重要岗位.需要我们学以致用,在工作中不断学习提升.以下:软测人员必备_数据库核心技能学习点,供大家学习参考. Q1:什么是: ...
- 随心测试_数据库_003 <数据库存储结构>
接上篇:了解了_数据库系统组成,继续理解必备知识点:数据库存储_逻辑结构 快速理解 数据存储结构:数据库系统_数据库_表 1. 理解什么是数据库 数据库发展:大致由 人工管理.文件系统.数据库系统(高 ...
- 随心测试_数据库_002 <数据库系统组成>
软测工程师:作为综合运用多学科知识,保障软件质量的重要岗位.需要我们学以致用,在工作中不断学习提升.以下:软测人员必备_数据库核心技能学习点,供大家学习参考. 数据库系统组成_必备 1. 简介:数据库 ...
- Flutter实战视频-移动电商-31.列表页_列表切换交互制作
31.列表页_列表切换交互制作 博客地址:https://jspang.com/post/FlutterShop.html#toc-c42 点击左侧的大类右边的小类也跟着变化 新建provide 要改 ...
- SQL*Plus 与数据库的交互(SQL*Plus时什么)
Oracle 的 SQL*Plus 是与数据库进行交互的客户端工具,在 SQL*Plus中,可以运行 SQL*Plus 命令与 SQL*Plus 语句. SQL*Plus 时一个基于 C/S 两层 ...
- 数据库的交互模式 常用的dos命令 (第一天)
浏览器和服务器和数据库的交互模式 windows nt(windows系统)的分类:服务操作系统有(server03 server08(R2) 12 16) 个人操作系统有(xp win7 win8 ...
- C#_数据库交互_SqlHelper
using System; using System.Collections.Generic; using System.Text; using System.Data.SqlClient; usin ...
- 自学_数据库<三>
数据库 数据库概述 DBMS(DataBase Management System,数据库管理系统)和数据库.平时谈到"数据库"可能有两种含义:MSSQLServer.Oracle ...
- 利用ajax的方式来提交数据到后台数据库及交互功能
怎么样用ajax来提交数据到后台数据库,并完成交互呢????? 一.当我们在验证表单的时候,为了阻止把错误的也发送到服务器,我们通常这样设置: $(function(){ var ...
随机推荐
- java jvm学习笔记二(类装载器的体系结构)
欢迎装载请说明出处:http://blog.csdn.net/yfqnihao 在了解java虚拟机的类装载器之前,有一个概念我们是必须先知道的,就是java的沙箱,什 ...
- POJ 1661 Help Jimmy
/*96655 's source code for M Memory: 8604 KB Time: 63 MS Language: G++ Result: Accepted */ #include& ...
- opencv开发的程序分发给客户时所需要的dll文件
这里主要讲在其他裸机,没有搭建开发环境机器上运行自己开发的程序. 为了测试,我专门用visualbox搭建了一个虚拟机(主机和虚拟机都是win7系统) 在发给别人程序运行出现错误:msvcp100d. ...
- C++空类以及没有成员变量的类的大小
关于C++中空类的大小为1,我们大家都有所了解,但是除了空类之外的其他一些没有成员变量的类的大小,还是有很多不明之处的. 我们来看如下一个例子: #include<iostream> us ...
- Node与Express开发 坑1
添加 app.set('views', __dirname + '/views') 修改 app.use(express.static(__dirname + '/public')); express ...
- volatile,可变参数,memset,内联函数,宽字符窄字符,国际化,条件编译,预处理命令,define中##和#的区别,文件缓冲,位域
1.volatile: 要求参数修改每次都从内存中的读取.这种情况要比普通运行的变量需要的时间长. 当设置了成按照C99标准运行之后,使用volatile变量之后的程序运行的时间将比register的 ...
- Bzoj4556: [Tjoi2016&Heoi2016]字符串 后缀数组
4556: [Tjoi2016&Heoi2016]字符串 Time Limit: 20 Sec Memory Limit: 128 MBSubmit: 169 Solved: 87[Sub ...
- 命令ls
ls -a 显示所有文件,包括隐藏文件(.开头的文件,配置文件常为隐藏文件)ls -l 显示详细信息ls -R 递归显示子目录结构ls -ld 显示目标目录的详细信息(并不返回目录里的内容)
- C#调用C++ DLL类方法(转)
http://hi.baidu.com/game_dev/item/ba29ecf67bd5f6cf521c26fc
- 【转载】setjmp和longjmp函数使用详解
[说明]本文上半部分转载自 wykwdy007 的转载文章 http://blog.csdn.net/wykwdy007/article/details/6535322 --------------- ...