oledbcommand用法(oled_shownum怎么用)
在c#中通过access数据库怎样实现查询(包括第一条,上一条,下一条,最后一条。)
本文介绍C#访问操作Access数据库的基础知识,并提供一个相关的例程。
1.通过ADO.NET的OleDb相关类来操作Access
主要知识点如下:
using System.Data.OleDb;
using System.Data;
连接字符串:String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=product.mdb";
建立连接:OleDbConnection connection = new OleDbConnection(connectionString);
使用OleDbCommand类来执行Sql语句:
OleDbCommand cmd = new OleDbCommand(sql, connection);
connection.Open();
cmd.ExecuteNonQuery();
2.取得Access自增标识字段在插入数据后的id值
cmd.CommandText = @"select @@identity";
int value = Int32.Parse(cmd.ExecuteScalar().ToString());
return value;
3.执行事务
需要用到OleDbTransaction,关键语句如下:
OleDbConnection connection = new OleDbConnection(connectionString);
OleDbCommand cmd = new OleDbCommand();
OleDbTransaction transaction = null;
cmd.Connection = connection;
connection.Open();
transaction = connection.BeginTransaction();
cmd.Transaction = transaction;
cmd.CommandText=sql1;
cmd.ExecuteNonQuery();
cmd.CommandText=sql2;
cmd.ExecuteNonQuery();
transaction.Commit();
4.执行查询,返回DataSet
OleDbConnection connection = new OleDbConnection(connectionString);
DataSet ds = new DataSet();
connection.Open();
OleDbDataAdapter da = new OleDbDataAdapter(sql, connection);
da.Fill(ds,"ds");
5.分页查询
分页查询使用OleDbDataReader来读取数据,并将结果写到一个DataSet中返回。
以上内容封装为三个可重用的类:AccessDBUtil,AccessPageUtil,Page
代码这里下载AccessDBUtilDemo.rar (191.37 KB , 下载:5814次)
本例程是一个c#的winform程序,但是数据访问类可以在Web环境下使用。
本例程演示了:
1.Access数据库的插入,更新,修改,查询;
2.带参数的sql语句的使用,而不是拼SQL;
3.使用DataReader的分页查询,而不是用嵌套的SQL语句来分页;
4.用事务同时执行多个SQL语句;
5.在插入数据的同时返回最新的ID值;
6.整型,实型,字符串,日期型,布尔型五种数据类型的操作;
7.使用正则表达式来验证整数和实数;
8.listview用来显示数据的一些基本用法。
本示例不包括:
1.高效的分页查询,仅仅是提供了一种分页的方法,但我认为DataReader应该比嵌套的SQL语句快(未测试)。
2.完善的分页封装,只提供了分页的简单包装。
3.嵌套的事务处理,提供了同时执行多个sql语句的事务处理,但不支持嵌套事务。
4.listview的使用,只是利用winform控件来演示数据访问,因此不能作为winform编程的良好示例,例如添加数据时界面并没有很好地更新。
OleDbCommand.ExecuteNonQuery()函数使用问题
语法不正确吧。 from 后面没有空格导致 from和表名连在一起了 所以语句查询的时候就会提示找不到关键字。
query_sql:='select count(1) from' || table_name ; --问题在这里, from 与表名之间缺少一个空格 --拼出来的的SQL就成了 SELECT COUNT(1) fromemployees; --
修改如下: query_sql:='select count(1) from ' || table_name ;--加空格 query_sql:='select count(1) from' || chr(32)|| table_name ;--chr(32为空格)
C#OleDbCommand是干什么的
连接数据库的命令过程,,用法如下:OleDbCommand 的用法
OleDbConnection con=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=data.mdb");
con.Open();
OleDbCommand dc=new OleDbCommand("select name from us where id=2", con);
textBox1.Text=dc.ExecuteScalar().ToString();
OleDbConnection con=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=data.mdb");
con.Open();
OleDbCommand dc=new OleDbCommand("insert into us (name) values (11)", con);
dc.ExecuteNonQuery();
con.Close();
string us=textBox2.Text;
string pa=textBox1.Text;
OleDbConnection con=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; data source=data.mdb");
OleDbCommand oldC=new OleDbCommand("insert into users (username, userpassword) values (@username, @userpassword)", con);
oldC.Parameters.Add("@username", us);
oldC.Parameters.Add("@userpassword", pa);
con.Open();
oldC.ExecuteNonQuery();
con.Close();
MessageBox.Show("Register successful!");
this.Dispose();
C#内SQL语句引号问题
前面加单引号的是错误的,因为你的mid理论上是个数字列。
至于下面的错误。阿门,你在用 odr["mcontent"] 前没有调用 odr.Read() 方法,当然不会读数据的。
---------------------
注意,用 odr["mcontent"] 前需要调用 odr.Read() 方法。
OleDbCommand cmd = new OleDbCommand("Select mcontent from MainInfo where mid=100", con);
OleDbDataReader odr = cmd.ExecuteReader();
odr.Read(); //注意此行,必须。
string s = odr["mcontent"].ToString();

c#怎么使用oledbconnection
关于使用ADO.NET创建并写入Excel文件与普通数据库操作极为类似,参见以下代码:
String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=c:/test.xls;" +
"Extended Properties=Excel 8.0;";
OleDbConnection cn = new OleDbConnection(sConnectionString);
string sqlCreate = "CREATE TABLE TestSheet ([ID] INTEGER,[Username] VarChar,[UserPwd] VarChar)";
OleDbCommand cmd = new OleDbCommand(sqlCreate, cn);
//创建Excel文件:C:/test.xls
cn.Open();
//创建TestSheet工作表
cmd.ExecuteNonQuery();
//添加数据
cmd.CommandText = "INSERT INTO TestSheet VALUES(1,'elmer','password')";
cmd.ExecuteNonQuery();
//关闭连接
cn.Close();
C#编程中如何用DataAdapter操作Access数据表记录
使用OleDb下的Connection、Command、DataAdapter和CommandBuilder
oledbconnection conn = new oledbconnection();
conn.connectstring = "your connection string";
oledbcommand cmd = conn.createcommand();
cmd.commandtext = "your SELECT command";
oledbdataadapter da = new oledbdataadapter(cmd);
commandbuilder cb = new commandbuilder(da);
dataset ds = new dataset();
//da 会自动打开连接
da.fill(ds);
/* operations on ds */
da.update(ds);
conn.close();
//release resources