精华内容
下载资源
问答
  • 使用ADO.NET的Datareader对象能从数据库中检索数据。检索出来的数据形成一个只读只进的数据流,存储在客户端的网络缓冲区内。 Datareader对象的read方法可以前进到一下条记录。在默认情况下,每执行一次read方法只会...

            一种是通过DataReader对象直接访问;另一种则是通过数据集Dataset和Dataadapter对象访问.
    使用ADO.NET的Datareader对象能从数据库中检索数据。检索出来的数据形成一个只读只进的数据流,存储在客户端的网络缓冲区内。 Datareader对象的read方法可以前进到一下条记录。在默认情况下,每执行一次read方法只会在内存中存储一条记录系统的开销非常少。
    创建datareader之前必须先创建sqlcommand对象,然后调用该对象的executereader方法来构造sqldatareader对象,而不是直接使用构造函数。
    下面的示例程序完成的功能是访问sqlserver数据库,并使用datareader从northwind数据中读取记录,并将查询结果通过控制台输出。
    using System;
    using System.Data;
    using System.Data.SqlClient;
    namespace ReadDataFromDB{

      class Class1{

      static void Main(string[] args){
    string myconn="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind";
    //需要执行的SQL语句
    string mysql="select OrderID,CustomerID from Orders where CustomerID='CHOPS'";
    //打开数据库连接。
        SqlConnection myconnection=new SqlConnection(myconn);
    myconnection.Open();
        //创建SqlCommand 对象
    SqlCommand mycommand=new(mysql,myconnection);
        //通过SqlCommand的ExecuteReader()方法构造DataReader 对象。
    SqlDataReader myreader=mycommand.ExecuteReader();
    while(myreader.read()){
    Console.WriteLine(myreader.GetInt32(0)+","+myreader.GetString(1));

      }
    myreader.Close();
    myconnection.Close();

      }

      }

      }

    展开全文
  • 查询数据库重复记录方法

    千次阅读 2016-11-15 10:09:24
    SQL语句查询数据库重复记录的方法 SQL语句查询数据库重复记录的方法 SQL 语句 查询 数据库 记录SQL语句查询数据库重复记录的方法 假设现有一张人员表(表名:Person),若想将姓名、身份证号、住址这三个字段完全...

    SQL语句查询数据库重复记录的方法 SQL语句查询数据库重复记录的方法 SQL 语句 查询 数据库 记录SQL语句查询数据库重复记录的方法

    假设现有一张人员表(表名:Person),若想将姓名、身份证号、住址这三个字段完全相同的记录查找出来,使用

    SELECT p1.*

    FROM persons p1,persons p2

    WHERE p1.id<>p2.id

    AND p1.cardid =p2.cardid

    AND p1.pname = p2.pname

    AND p1.address =p2.address

    可以实现该功能。

    删除重复记录的SQL语句

    1.用rowid方法

    2.用group by方法

    3.用distinct方法

    1、用rowid方法

    据据oracle带的rowid属性,进行判断,是否存在重复,语句如下:

    查数据:

    select * from table1 a where rowid !=(select max(rowid) from table1 b where a.name1=b.name1 and a.name2=b.name2......)

    删数据:

    delete from table1 a where rowid !=(select max(rowid) from table1 b where a.name1=b.name1 and a.name2=b.name2......)

    2.group by方法

    查数据:

    select count(num), max(name) from student --列出重复的记录数,并列出他的name属性

    group by num

    having count(num) >1 --按num分组后找出表中num列重复,即出现次数大于一次

    删数据:

    delete from student

    group by num

    having count(num) >1

    这样的话就把所有重复的都删除了。

    3.用distinct方法 -对于小的表比较有用

    create table table_new as select distinct * from table1 minux

    truncate table table1;

    insert into table1 select * from table_new;

    查询及删除重复记录的方法大全

    1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断

    select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)

    2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录

    delete from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)

    and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )>1)

    3、查找表中多余的重复记录(多个字段)

    select * from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)

    4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录

    delete from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)

    and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)

    5、查找表中多余的重复记录(多个字段),不包含rowid最小的记录

    select * from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)

    and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)

    (二) 比方说 在A表中存在一个字段“name”, 而

    且不同记录之间的“name”值有可能会相同, 现在就是需要查询出在该表中的各记录之间,“name”值存在重复的项;

    Select Name,Count(*) From A Group By Name Having Count(*) > 1

    如果还查性别也相同大则如下:

    Select Name,sex,Count(*) From A Group By Name,sex Having Count(*) > 1

    方法一

    declare @max integer,@id integer

    declare cur_rows cursor local for select 主字段,count(*) from 表名 group by 主字段 having count(*) >; 1

    open cur_rows

    fetch cur_rows into @id,@max

    while @@fetch_status=0

    begin

    select @max = @max -1

    set rowcount @max

    delete from 表名 where 主字段 = @id

    fetch cur_rows into @id,@max

    end

    close cur_rows

    set rowcount 0

    方法二

    "重复记录"有两个意义上的重复记录,一是完全重复的记录,也即所有字段均重复的记录,二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略。

    1、对于第一种重复,比较容易解决,使用

    select distinct * from tableName

    就可以得到无重复记录的结果集。如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除

    select distinct * into #Tmp from tableName

    drop table tableName

    select * into tableName from #Tmp

    drop table #Tmp

    发生这种重复的原因是表设计不周产生的,增加唯一索引列即可解决。

    2、这类重复问题通常要求保留重复记录中的第一条记录,操作方法如下,假设有重复的字段为Name,Address,要求得到这两个字段唯一的结果集

    select identity(int,1,1) as autoID, * into #Tmp from tableName

    select min(autoID) as autoID into #Tmp2 from #Tmp group by Name,autoID

    select * from #Tmp where autoID in(select autoID from #tmp2)

    最后一个select即得到了Name,Address不重复的结果集(但多了一个autoID字段,实际写时可以写在select子句中省去此列)

    查询重复

    select * from tablename where id in (

    select id from tablename

    group by id

    having count(id) > 1)

    摘自百度文库

    展开全文
  • Asp.net—查询数据库记录

    万次阅读 2013-01-20 13:51:48
    Asp.net—查询数据库记录 查询数据库记录 查询数据库记录时,首先创建SqlConnection对象连接数据库,然后定义查询字符串,最后对GridView控件进行数据绑定。 示例: 查询数据库记录 下面通过一个示例介绍在...

    <--好消息!好消息!好消息!

    粉丝超过2000的公众号主快来接单吧,快来领取你的第一笔广告费。(粉丝数不够的小伙伴,请私信我一并解决)
    新用户注册红包1.8元,新用户注册并接单红包9.9元。
    绑定有赚并接单成功的小伙伴,来找我领大红包。
    具体操作指导可加我微信(lizaozhizao)私信我。(本人亲测,真实有效,非广告)
    点击下面链接直接注册(选流量主)。
    2021年,流量变现年,不要错过,只要有公众号,有视频号,有流量,就能变现。大家都在做自媒体变现,你为什么也不尝试一下呢?

    https://a.newrank.cn/link/tkfomO

    -->

    Asp.net—查询数据库中记录

    查询数据库中记录

    查询数据库中记录时,首先创建SqlConnection对象连接数据库,然后定义查询字符串,最后对GridView控件进行数据绑定。

    示例:

    查询数据库中记录

    下面通过一个示例介绍在ASP.NET 2.0应用程序中如何查询数据库中记录。新建一个网站,默认主页为Default.aspx,在Default.aspx页面上分别添加一个TextBox控件、一个Button控件和一个GridView控件,并把Button控件的Text属性值设为“查询”。

    该页在实现时,首先编写一个GridView控件数据绑定方法bind(该方法请参见5.3.2中bind方法),并在Page_Load事件中调用该方法显示数据库中记录,具体代码如下。

       protected void Page_Load(object sender, EventArgs e)

        {

            if (!IsPostBack)

            {

                this.bind();

            }

        }

    然后在【查询】按钮Click事件下编写实现数据库查询操作的代码,具体代码如下。

    protected void Button1_Click(object sender, EventArgs e)

        {

            if (TextBox1.Text != "")

            {

                string str = "select * from Region where RegionID='" + TextBox1.Text.Trim() + "'";

                sqlconn = new SqlConnection(sqlstr);

                sqlconn.Open();

                SqlCommand sqlcom = new SqlCommand(str,sqlconn);

                int result = Convert.ToInt32(sqlcom.ExecuteScalar());

                if (result > 0)

                {

                    SqlDataAdapter myda = new SqlDataAdapter(str, sqlconn);

                    DataSet myds = new DataSet();

                    myda.Fill(myds);

                    GridView1.DataSource = myds;

                    GridView1.DataBind();

                    sqlconn.Close();

                }

                else

                    Response.Write("<script>alert('没有相关记录')</script>");

            }

            else

                this.bind();

        }

    执行程序,示例运行结果如图1所示。

     

    图1查询数据库中记录

    程序完整代码如下:

    ★★★★★Default.aspx.cs代码文件★★★★★

    using System;

    using System.Data;

    using System.Configuration;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    using System.Data.SqlClient;

     

    public partial class _Default : System.Web.UI.Page

    {

        string sqlstr = "Data Source=(local);Database=Northwind;Uid=sa;Pwd=";

        SqlConnection sqlconn;

        protected void Page_Load(object sender, EventArgs e)

        {

            if (!IsPostBack)

            {

                this.bind();

            }

        }

        protected void Button1_Click(object sender, EventArgs e)

       {

            if (TextBox1.Text != "")

            {

                string str = "select * from Region where RegionID='" + TextBox1.Text.Trim() + "'";

                sqlconn = new SqlConnection(sqlstr);

                sqlconn.Open();

                SqlCommand sqlcom = new SqlCommand(str,sqlconn);

                int result = Convert.ToInt32(sqlcom.ExecuteScalar());

                if (result > 0)

                {

                    SqlDataAdapter myda = new SqlDataAdapter(str, sqlconn);

                    DataSet myds = new DataSet();

                    myda.Fill(myds);

                    GridView1.DataSource = myds;

                    GridView1.DataBind();

                    sqlconn.Close();

                }

                else

                    Response.Write("<script>alert('没有相关记录')</script>");

            }

            else

                this.bind();

        }

        public void bind()

        {

            string str = "select * from Region";

            sqlconn = new SqlConnection(sqlstr);

            sqlconn.Open();

            SqlDataAdapter myda = new SqlDataAdapter(str, sqlconn);

            DataSet myds = new DataSet();

            myda.Fill(myds);

            GridView1.DataSource = myds;

            GridView1.DataBind();

            sqlconn.Close();

        }

    }

    展开全文
  • 查询oracle数据库操作记录

    万次阅读 2018-02-02 11:36:07
    1、查询oracle修改记录 select t.SQL_TEXT, t.FIRST_LOAD_TIME from v$sqlarea t where t.FIRST_LOAD_TIME like '2010-06-30%' order by t.FIRST_LOAD_TIME desc2、查看oracle会话 select * from v
    可以使用以下查询语句查询oracle相关信息:
    1、查询oracle修改记录
    select t.SQL_TEXT, t.FIRST_LOAD_TIME
    from v$sqlarea t
     where t.FIRST_LOAD_TIME like '2010-06-30%'
     order by t.FIRST_LOAD_TIME desc
    2、 查看oracle会话
    select * from v$session   t order by t.LAST_ACTIVE_TIME desc
    3、查看oracle用户执行的sql语句历史记录
    select * from v$sqlarea t where t.PARSING_SCHEMA_NAME in ('用户名') order by t.LAST_ACTIVE_TIME desc
    4、 查看oracle的权限角色
    select   *   from   dba_role_privs;    授予用户和其他角色的角色  
    select   *   from   dba_sys_privs;     授予用户和其他角色的系统权限  
    select   *   from   dba_tab_privs;     数据库中对象的所有授权
    select * from user_role_privs;         查看当前用户的角色

    作者:scgyus

    转载请注明出处:http://blog.csdn.net/scgyus/


    展开全文
  • 数据库查询去掉重复记录

    千次阅读 2009-02-27 08:43:00
    数据库查询时去掉重复记录,不少朋友希望用distinct就解决问题,disctinct将重复的记录忽略,但它忽略的是完全一致的重复记录,而不是其中某个字段重复的记录,或者说,distinct查询一个字段时好使,多个字段就不好...
  • oracle查询数据库操作记录

    万次阅读 2018-10-25 19:12:27
    select * from v$session t ; select * from user_objects order by last_ddl_time desc; select t.sql_text,t.first_load_time from v$sqlarea t where t.first_load_time like '2018-10-25%' order by t.firs...
  • SQL数据库查询练习题及答案

    万次阅读 多人点赞 2019-04-12 10:19:57
    题目:设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。 四个表的结构分别如表1-...1、 查询Student表中的所有记录的Sname、Ssex和Class列。 2、 查...
  • 查询数据库各种历史记录

    千次阅读 2019-05-05 12:35:00
    查询数据库各种历史记录 在SQL Server数据库中,从登陆开始,然后做了什么操作,以及数据库里发生了什么,大多都是有记录可循的,但是也有一些确实无从查起。 一.数据库启动记录 1.最近一次启动SQL Server...
  • 数据库查询重复记录的数量

    千次阅读 2016-08-22 20:50:44
    having字句可以让我们筛选成组后的各种数据,where字句在聚合前先筛选记录,也就是说作用在group by和having字句前。而 having子句在聚合后对组记录进行筛选。 SQL实例: 一、显示每个地区的总人口数和总面积...
  • Django查询数据库记录

    千次阅读 2019-03-07 19:47:54
    1. 导入models.py 模块 2. 查询所有语法 3. 将数据返回给页面 4. 展示内容
  • 让 Python 的数据库查询返回字典记录

    千次阅读 2018-12-17 02:32:54
    在使用 Python 进行数据库查询,通常情况下 cursor 的 fetchall, fetchmany 返回的是元组(Tuple) 的列表,所以对查询到的结果只能用索引下标来访问,而无法通过字段名来获取值。对 Java JDBC 的 ResultSet ...
  • 查询分析器中写了半天的SQL,竟忘了保存,坑爹啊~想找回某段时间曾执行过的一段SQL语句,怎么办? 好吧,到数据库日志中去找找,通过时间、关键字批配。。能想到的全用上吧。 首先假定你执行过它。没有?好吧...
  • Dameng(达梦)数据库查询TopN记录

    千次阅读 2018-09-18 16:37:57
    从SqlServer,mysql,Oracle数据库新增国产数据库达梦数据库支持的过程中,发现达梦真的是大杂烩啊。。。 1、SqlServer中支持Top 关键字 select top 5 * from table_a; 2、mysql数据库支持limit关键字 select * ...
  • 用flask-sqlalchemy以orm模式根据日期查询数据库记录,看似很简单,也很平常的操作呀,硬是搞死我了,花了两个小时才搞定,囧ORZ 我数据库mytable中有一个datetime类型字段create_date,然后我们需要查询今天的数据...
  • 1.数据库查询总条数 use information_schema; select sum(table_rows) from tables where TABLE_SCHEMA = 数据库名称;   2.mysql 查看数据库中所有表的记录数 use information_schema; select table_name,...
  • Oracle数据库查询表中记录为空,Empty result set fetched,此时没有数据,获取不到任何值,但是此时我们需要根据结果来做计算,因此可以使用count()函数来做结果统计,将统计结果用来做判断。 场景:需要查询出...
  • PLSQL查询数据库操作历史记录

    千次阅读 2019-04-16 17:58:09
    PLSQL查询数据库操作历史记录: 1、在PLSQL按键Ctrl+E 可以查询我们在PLSQL执行过的历史SQL,包括时间、用户、语句; 2、SELECT * FROM V$SQL 执行sql查询查询内容包含所有用户和应用系统对数据库的操作,执行...
  • 有一张表,有店名,数据日期,日销售额,商店编号 查询连续**连续**三天或者三天以上销售额超过50000的店名 比如A店1号的销售额5万2号3万3号6万4号7万,这是不符合记录
  • 开启MySQL数据库操作记录

    千次阅读 2018-12-13 19:25:28
    开启MySQL数据库操作记录 作者:【吴业亮】 博客:http://blog.csdn.net/wylfengyujiancheng 1、查看状态: show variables like 'gen%'; +------------------+-------------------------------------+ | Variable_...
  • sqlite查询数据库去除重复记录

    万次阅读 2016-06-08 08:52:57
    sqlite查询数据库去除重复记录: select *, count(distinct 字段名) from 表明 where 字段名1 = '条件' group by 字段名
  • 查询数据库记录数的最快方法

    千次阅读 2015-01-14 15:30:50
    查询一张表的记录数时,由于记录数太多,采用"Select count(1) from 表名"进行查询一直超时。 后采用下面的SQL,不到1秒钟即返回结果。 select rowcnt from sysindexes where id=object_id('表名')
  • es数据库查询API

    千次阅读 2019-08-07 18:12:46
    1.背景 ES数据库是非关系型数据库 2.ES数据库优点 1.存储优化 内存中使用有限状态机FST优化 ...使用Bitmap来记录文档的Id,每个bit对应一个文档,表示它是否存在。 2.联合查询优化 若要对多个t...
  • 想通过条件查询mysql数据库中的参数,例如想查询字段参数1大于100的记录,目前做法是先通过读取检索条件:字符串( ”参数1>100”),然后从字符串中分别将”参数1”,”大于号,100分别取出,然后再调用sql语句进行...
  • 常用数据库查询前10条记录

    千次阅读 2014-11-07 17:04:12
    access: select top (10) * from table1 where 1=1  db2: select column from table where 1=1 fetch first 10 rows only  mysql: select * from table1 where 1=1 limit 10  ...sql ser
  • PostgreSQL 数据库查询

    万次阅读 2018-05-26 14:54:09
    数据库查询一、基本查询语法:SELECT查询基本格式①、创建frui表create table fruit( f_id character(10) not null, s_id integer not null, f_name character(255) not null, f_price decimal(8,2) not null, ...
  • 数据库查询前N条记录sql语句介绍

    千次阅读 2011-04-12 11:17:00
    1.MSSQL a)查询前n条记录:  select top n * from table_name; b)查询第n条到第m条记录:  select top n * from (select top m * from table_name order by column_name) a order by ...
  • PostgreSQL数据库的去重与查询制定区间的记录数1、查询前N条记录数在PostgreSQL数据库数据库中有一个limit函数用来查询前多少条SELECT * from ag_actv LIMIT 1050我们得到是 ag_actv 表中的1050行记录2、查询指定...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 894,075
精华内容 357,630
关键字:

数据库的查询记录