Kiev1.org Карта сайта Файлы Фотографии Киева
  
Реклама:






???????
 
 Sysadmin
 ??????????????
 ????? ? ?????
 ??????????
 ???????????? ???????
 ?????????????
 ? ???????
 ? ???????????
 ???????? ? ??????
 ???????????
 ??????????? ???????
 ???????? ????? ?????? ?????? ???????? ??????????
 ??????
 ??????
 ?????? ?????? 1924-1994
 ??????? ?? ??????
 ???? ? ???????
 ????? ??????????
 ?????????


Внимание! Читая пророчества на этом сайте помните что достоверность трудно проверить и все может во времени изменяться - самое главное думать своей головой и не верить легкомысленно всему что говорят, особенно советское телевидение
"О дне же том, или часе, никто не знает, ни Ангелы небесные, ни Сын, но только Отец (Мк. 13, 32)"

??????????? DBF-???? ? MySQL ??? SQL ???????



??? ?p??p???? (?? ??) ??p??????? ?????? ?? .DBF ????? ? .ISM/.ISD ????? (?? DBASE-???? ? MySQL-????). www.codenet.ru
(c) Dmitry Borodin,
php.spb.ru, dima@i.am

??? ?p??p???? (?? ??) ??p??????? ?????? ?? .DBF ????? ? .ISM/.ISD ????? (?? DBASE-???? ? MySQL-????).

???????? ? MySQL ?????? (??? ?? ??????) ??????? ?? ??p????p??, p????? ?? ????? ??p????p? DBASE ???????. ????? ???????????? ???? ?????? ??? INT, SMALLINT, CHAR ? ?.?., ?? ?????? ?? VARCHAR.

???p???? MySQL. ???? ???? ?p??????? ? UNIX'e ????p???? ?p??? ? ?????? (??? ??? ???????? ???????? ???-??? ?? .h) ???????? ??p????p? ? ???? ?p??p????, ????????p???? ? ?????????.

P.S. ???????? ? ???????? ?????????. ???? DBF ????? ?? 30-50 ???????????? ?? 3-5 ??????.

P.S.S. ??. ??? ?? http://www.mysql.ru/download/dbf2mysql.zip>

?????? ?????? ?????? ????????????? DBF -> TXT. ??? ????? ?????????? ????? ????????.

  • 1. ????????? ?????? DFB ? ????????? ???? ??? ????? (?????????, ?? ?????? ???)
  • 2. ???????? ????????? ????????? ?? PHP. ? PHP ???? ??? ??????????? ???????. ????? ????????? ?? 2 ?? 10 ?????.
  • 3. ??????????????? ???????? DBF2TXT. ???? ?? ?????? ?????? (ASM, Pascal, C, Perl...). ????? ????? ?? 20 ??? ???: http://ya.ru/yandsearch?text=dbf2txt&rpt=rad>

??????????, ???? ?????????:

*/
#include <stdlib.h>

#include <string.h>
#include <stdio.h>
#include <fcntl.h>
#include <io.h>

int main(void)
{
   int f,g;
   long i,len,end,buf,nbuf,nnbuf,j,filelen,cols;

   char b[22222], // ????p ? 22??. ????? ????????? ?? 60??, ??, ????????,
                  // ?p??p???? ?? ????????p?????. BUF*NBUF ?????? ???? ?????? 
                  // p????p? ????? ????p?!
   *lllen,

/********** ??? - ??p????p? - ????? - ??p??????p????? ************************/

   f1[]   ="D:\1\base\backup\glossary.dbf",   // dbf .DBF
   f2[]   ="C:\mysql\data\dima\glossary.isd", // sql .ISD (??????)
   f2ism[]="C:\mysql\data\dima\glossary.ism"; // sql .ISM (???????? ???????)

   buf=20; // ????????(????) ? ??p??? ??????? (.dbf & .ism)

   nbuf=500; // ?????? ?? .DBF ??p?? ?? p?? (????p)
             // ??? ??????, ??? ????p?? p???????

   len=493429L; // ??p?? ? ???? ?????? .dbf, ????? ?????? ?? Dos Navigator'a
                // ??? ??????? ?????? dbf-?????? (???p???p, dbu.exe)

   cols=2; // ????? ??????? ? .dbf
   // ? ??????????? ?? ???? ??????????? ????????, ??. 76 ??p???

/*****************************************************************************/

   if (buf*nbuf>22222) {
      printf("????????? ????? 'nbuf' ???, ????? nbuf*buf ???? ?????? 22222");
      return 1;
   }
   

   system("cls");              // ???? ??p?? ?????????
   system("echo ??????...");   // ? ???????? ??? ????? - ?p??p???? ?? ??????.
                               // ? ???? ???? ????? ??? ????? ??????? ????p?
                               // b[?] (~64Kb), ???????????? ? Borland C++ 3.1

   strcpy(b,"echo .>");   // 
   strcat(b,f2);          //
   system(b);             // ???????? .ISD

   if ((f = _open(f1, O_RDONLY)) == -1)  // ???p??? DBF
   {
      perror("Error1:");
      return 1;
   }
   if ((g = _open(f2, O_WRONLY)) == -1) // ???p??? ISD
   {
      perror("Error2:");
      return 1;
   }


   
   // ??????????? ????????, ?????? ?????? ? .dbf ?????
   _read(f,b,0x20 + 1 + 0x20 * cols);


   nnbuf=nbuf*buf;
   end=(len-(len%nbuf))/nbuf;
   filelen=len*buf;

   printf("end=%li, len%%nnbuf=%linlen-(len%%nbuf)=%lin",end,(len%nnbuf),len-(len%nnbuf));


   // ??p???????? ???????? ??????. ?? ????? ?p???? BUF*NBUF.

   for (i=0; i<end; i++) {
     _read(f,b,nnbuf);
     for (j=0; j<nnbuf; j+=buf) b[j]=0xFE;
     _write(g,b,nnbuf);
   }


   // ??p???????? ??????????? ????? ??????. ??? ????? p????
   // <p????p_?????> ????? <BUF*NBUF>

   i=_read(f,b,nnbuf);
   i=i-i%buf;
   for (j=0; j<i; j+=buf) b[j]=0xFE;
   _write(g,b,i);

   // ??? ?????? - ?????? ??p????????
   printf(">end=%i, len%%nbuf=%lin",i,(len%nbuf));

   _close(f);
   _close(g);


   ////////////////////////////////////////////////////////////

   // ? ????? MySQL ???? .ism ?p???? ????????? ?????...

   if ((f = _open(f2ism, O_RDWR)) == -1)
   {
      perror("Error3:");
      return 1;
   }


   _read(f,b,16);
   _write(f,&len,4); // ???-?? ?????
   _read(f,b,12);
   _write(f,&filelen,4);  // ????? ????? .isd
   _write(f,&len,4); // ???-?? ?????
   _read(f,b,8);
   _write(f,&len,4); // ???-?? ?????

   _close(f);

}





 The Effective Use of Joins in Select Statements
 SQL - ??????? ???????? ? MySQL (SELECT, CREATE, INSERT) (sql mysql select howto)
 MySQL ??? ????????????
 ??????? ?????
 ??????????? ????????????? MySQL
 ????? ?????? ? MySQL
 ???????????? ??? ????????? php ???????? http://bm.org.ru
 ?????????? ??????????? ?? MySQL, ??? ?????????????? ??????? ?????? ???????????? root


Внимание! Читая пророчества на этом сайте помните что достоверность трудно проверить и все может во времени изменяться
"О дне же том, или часе, никто не знает, ни Ангелы небесные, ни Сын, но только Отец (Мк. 13, 32)"