数据库名:DX_YHHJ
表名:HJXX
表中数据如:
USER_ID       USER_NAME   USER_XX   USER_JI
-----------------------------------------------
320521650302451 侯永芳 167211010100992565 250.10
330125197101085316 陈元明 167211010101087111 152.50
330324196405044185 王莲英,167211010101053403 153.75-------------------------------------------
例如,我要搜索320521650302451这个号码,然后把这个号码所在的行导出到TXT, 怎么样实现?

解决方案 »

  1.   

    OleDbConnection myConnection = new OleDbConnection(@"Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=DX_YHHJ ;" + 
          "Integrated Security=SSPI
    ;");
       string sql = "SELECT * FROM HJXX WHERE USER_ID ='320521650302451'";
       OleDbCommand myCommand = new OleDbCommand(sql );
       myCommand.Connection = myConnection;
       myConnection.Open();
       OleDbDataReader myReader;
       myReader = myCommand.ExecuteReader();
       while (myReader.Read()) {
          //写入文件
       }   myReader.Close();   myCommand.Connection.Close();
      

  2.   

    有表名:ID_XX
    表中数据如: 
    USER_ID  
    ---------------
    320521650302451
    320521650302451
    330324196405044185
    ------------------如果我需要从ID_XX提取号码,然后在HJXX中搜索符合的行,把符合行的数据导出到一个TXT. 
    这个任何实现啊 ?
      

  3.   


    SELECT * FROM HJXX WHERE USER_ID IN (SELECT USER_ID FROM ID_XX)
    比如你把数据放到DataTable后
    using(StreamWriter sw = new StreamWriter(你的txt文件路径))
    {
        foreach(DataRow row in table.Rows)
        {
            string temp = row["USER_ID"].ToString() + " " + row["USER_NAME"].ToString() + " " + row["USER_XX"].ToString() + row["USER_JI"].ToString();
            sw.WriteLine(temp);
        }
    }
      

  4.   

    上面的temp就是拼字符串,拼成你想要的格式