20131209-数据库导入导出数据-sqlhelper-第十七天
[1]
导出数据
namespace _05导出数据
{
class
Program
{
static
void Main(string[] args)
{
string str = "Data Source=xy-pc;Initial Catalog=MyItcast;Integrated Security=True";
using (SqlConnection con=new
SqlConnection(str))
{
string sql = "select TClassId,TClassName,tclassdesc FROM TblClass";
using (SqlCommand cmd=new
SqlCommand(sql,con))
{
con.Open();
using (SqlDataReader sda=cmd.ExecuteReader())
{
if (sda.HasRows)
{
//把数据库中的文件写入到文本文件中去
using (StreamWriter sw=new
StreamWriter("1.txt"))
{
sw.WriteLine("{0},{1},{2}",sda.GetName(0),sda.GetName(1),sda.GetName(2));
while (sda.Read())
{
sw.WriteLine("{0},{1},{2}",sda["tclassid"],sda["tclassname"],sda["tclassdesc"]);
}
}
}
}
}
}
Console.WriteLine("搞定了");
Console.ReadKey();
}
}
}
[2]
namespace _06导入数据
{
class
Program
{
static
void Main(string[] args)
{
using (StreamReader sr=new
StreamReader("1.txt"))
{
string line = sr.ReadLine();//读取第一行内容
string str = "Data Source=xy-pc;Initial Catalog=MyItcast;Integrated Security=True";
using (SqlConnection con=new
SqlConnection(str))
{
string sql = "insert INTO TblClass(TClassName,TClassDesc)VALUES(@TClassName,@TClassDesc)";
using (SqlCommand cmd=new
SqlCommand(sql,con))
{
con.Open();//打开数据库
//设置每个参数的类型
SqlParameter[] param =
{
new
SqlParameter("@TClassName", System.Data.SqlDbType.NVarChar),
new
SqlParameter("@TClassDesc", System.Data.SqlDbType.NVarChar)
};
cmd.Parameters.AddRange(param);
while ((line=sr.ReadLine())!=null)
{
string[]txts= line.Split(',');
string className = txts[1];
string classDesc = txts[2];
//给数组中的每个参数进行赋值
param[0].Value = className;
param[1].Value = classDesc;
cmd.ExecuteNonQuery();
}//end while
}//end using
}//end using
}//end 流
Console.WriteLine( "执行完了");
Console.ReadKey();
}
}
}
[3]App.config
<?xml
version="1.0"
encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add
connectionString="Data Source=xy-pc;Initial Catalog=MyItcast;Integrated Security=True"
name="strCon" />
</connectionStrings>
</configuration>
[4]
public
class
SQLHelper
{
private
static
readonly
string str = ConfigurationManager.ConnectionStrings["strCon"].ConnectionString;
///
<summary>
///
增删改方法
///
</summary>
///
<param name="sql">传sql语句</param>
///
<param name="param">如果sql语句带参数,则传参数,如果没有参数则不用传</param>
///
<returns></returns>
public
static
int ExeCuteNonQuery(string sql,params
SqlParameter[] param)
{
using (SqlConnection con=new
SqlConnection(str))
{
using (SqlCommand cmd=new
SqlCommand(sql,con))
{
con.Open();
if (param!=null)
{
cmd.Parameters.AddRange(param);//把用户传过来的参数给cmdparameters了
}
return cmd.ExecuteNonQuery();//完事
}
}
}
public
static
object ExecuteScalar(string sql,params
SqlParameter[]param)
{
using (SqlConnection con=new
SqlConnection(str))
{
using (SqlCommand cmd=new
SqlCommand(sql,con))
{
con.Open();
if (param!=null)
{
cmd.Parameters.AddRange(param);
}
return cmd.ExecuteScalar();
}
}
}
public
static
SqlDataReader ExecuteReader(string sql,params
SqlParameter[]param)
{
SqlConnection con = new
SqlConnection(str);
using (SqlCommand cmd=new
SqlCommand(sql,con))
{
if (param != null)
{
cmd.Parameters.AddRange(param);
}
try
{
con.Open();
return cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
}
catch(Exception ex)
{
con.Close();
con.Dispose();
throw ex;//有可能会出现异常,但是不确定异常是什么
}
}
}
}
}
[5]sql参数
string sql = "insert into tblstudent(tsname,tsgender,tsage,tclassid)values(@name,@gender,@age,@classid)";
SqlParameter[] param =
{
new
SqlParameter("@name",name),
new
SqlParameter("@gender",gender),
new
SqlParameter("@age",age),
new
SqlParameter("@classid",classid)
};
20131209-数据库导入导出数据-sqlhelper-第十七天的更多相关文章
- mongo数据库导入导出数据
一.Mongodb导出工具mongoexport Mongodb中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件.可以通过参数指定导出的数据项,也可以根 ...
- oracle数据库导入导出数据
导出命令 exp username/password@192.168.x.xx/orcl file='D:\20170126.dmp' log='D:\20170126.log' 导入命令 imp u ...
- oracle中导入导出数据备份数据库
原文:oracle中导入导出数据备份数据库 数据库所在位置 将数据导出到的文件名 用户名 备份数据库 :exp c ...
- linux mysql 数据库操作导入导出 数据表导出导入
linux mysql 数据库操作导入导出 数据表导出导入 1,数据库导入 mysql -uroot -p show databases; create database newdb; use 数据库 ...
- Android开发笔记:SQLite导入导出数据
SQLite是Android中最方便使用的数据库了,现在看下如何快速的在SQLite中导入导出数据. 首先由于是.NET项目转Android,原有数据库使用的是SQLSERVER,由于项目相同部分结构 ...
- MYSQL数据库导入导出(可以跨平台)
MYSQL数据库导入导出.sql文件 转载地址:http://www.cnblogs.com/cnkenny/archive/2009/04/22/1441297.html 本人总结:直接复制数据库, ...
- Oracle数据库——常用命令(用户管理、数据库导入导出)
--==cmd控制台==-- --==日常用户管理SQL==-- --连接到SQLPLUS >sqlplus /nolog --以dba身份连接 sql>conn / as sysdba ...
- oracle数据库导入导出命令!(转)
oracle数据库导入导出命令! Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份. 大多情况都可以用Oracle数据导入导出完成 ...
- [转]mysql导入导出数据中文乱码解决方法小结
本文章总结了mysql导入导出数据中文乱码解决方法,出现中文乱码一般情况是导入导入时编码的设置问题,我们只要把编码调整一致即可解决此方法,下面是搜索到的一些方法总结,方便需要的朋友. linux系统中 ...
- PLSQL导入/导出数据方法
PLSQL导入/导出数据方法 PLSQL导入/导出数据方法 以前导数据库信息的时候,总是会先开启sql窗口,把自己手写的建表文件复制进去,然后再导入数据信息. 今天突然懒得去找以前的建表文件,而想用S ...
随机推荐
- Image Captioning代码复现
Image caption generation: https://github.com/eladhoffer/captionGen Simple encoder-decoder image capt ...
- 利用BLCR加速android的启动(zygote加入checkpoint支持)
目前基于android4.2.2基线代码的blcr扩展,编译和启动是没有问题了,但是一重启就挂了. 弄这个有段时间了,很纠结,没有个可靠的结果,但是研究到现在,又舍不得放弃. 我想除了shuaiwen ...
- UAC就不能一次添加、永久信任吗?
每次都要点击确定,感觉好麻烦. 而且阻碍了某些功能的实现.
- SSL Converter & Formats
https://www.sslshopper.com/ssl-converter.html PEM Format The PEM format is the most common format th ...
- GetSystemTimeAsFileTime讲解(从1601年1月1日到目前经过的纳秒)
void WINAPI GetSystemTimeAsFileTime( Out LPFILETIME lpSystemTimeAsFileTime ); 这个函数获取到的是从1601年1月1日到目前 ...
- 通过内核对象在服务程序和桌面程序之间通信的小问题 good
关于在通过 事件对象 在服务程序和普通桌面应用程序相互之间通信的问题,分类情况进行讨论:1.普通桌面应用程序中创建事件,服务程序中打开事件 XP的情况普通桌面应用程序中创建: m_hEvent = : ...
- Java对象结构及HotSpot对象模型
一.对象结构 在HotSpot虚拟机中,对象在内存中存储的布局可以分为3块区域:对象头(Header).实例数据(Instance Data)和对齐填充(Padding).下图是普通对象实例与数组对象 ...
- ABP开发框架前后端开发系列---(5)Web API调用类在Winform项目中的使用
在前面几篇随笔介绍了我对ABP框架的改造,包括对ABP总体的介绍,以及对各个业务分层的简化,Web API 客户端封装层的设计,使得我们基于ABP框架的整体方案越来越清晰化, 也越来越接近实际的项目开 ...
- DNS之缓存服务器部署流程
环境介绍 [root@dns ~]# cat /etc/centos-releaseCentOS release 6.6 (Final)[root@dns ~]# ifconfig eth0|sed ...
- 在 Windows 中编译 Github 中的 GO 项目
1.相关软件与环境准备 1.1 GO 安装 下载地址,https://studygolang.com/dl,选择 Windows 版,本文安装到 D:\Go 1.2 LiteIDE 安装 下载地址,h ...