2016-10-25 10 views
1

str_to_dateおよびconcat unite関数を時間と日付とともに使用します。私は、訪問をするときに、インポートするか、または後でフォーマットするかを直接変更する方法がわかりません。私のcsvファイルでstr_to_dateおよびユニットの日付と時刻に連結します。

CREATE trigger `trigger` before insert 
    on `int` 
    for each row 


BEGIN 

    declare p, c, v, m, dublare int; 
    declare dublare_inreg condition for 1062; 
    declare continue handler for dublare_inreg 
     begin 
      set dublare = 0;  
     end; 
    set dublare = 1; 
    set foreign_key_checks = 0; 



    insert into pacienti(nume,prenume) values(new.numepacient,new.prenumepacient);  

     set p = last_insert_id(); 
     if dublare = 0 then 
      select distinct id_p from pacienti where nume = new.numepacient into p; 
      set dublare = 1; 

     end if; 

    insert into cabinete(den_cabinet) values(new.cabinet);    

     set c = last_insert_id(); 
     if dublare = 0 then 
      select distinct id_c from cabinete where den_cabinet =new.cabinet into c; 
      set dublare = 1; 

     end if; 

     set m = last_insert_id(); 
     if dublare = 0 then 
     select distinct id_m from medici where id_m = nume into m; 
      set dublare = 1; 
     end if; 

    INSERT INTO vizite(data_ora,id_cabinet,id_pacienti,id_medici) 
     values(str_to_date(new.datavizita, ' ' , new.oraintrare, '%d/%m/%Y %H:%i:%s')), p , c , m); 

私は形式のデータを持っている22/02/2016

そして、これは私の負荷です。

load data local infile 'D:\\pfinal\\vizite.txt' IGNORE into table `int` 
           fields terminated by ',' 
           lines terminated by '\n' 
           ignore 190000 lines 
           (DataVizita,OraIntrare,NumePacient,PrenumePacient,NumeMedic,PrenumeMedic,Cabinet) 
          ; 

答えて

0

は、彼らがあなたの入力日付に存在してはいけないあなたの日付形式でスペースを削除し、日付と時刻のフィールドどうもありがとうございまし

str_to_date(CONCAT(new.datavizita,' ',new.oraintrare),'%d/%m/%Y %H:%i:%s') 
+0

を合併するCONCATを使用します! –

+0

もう一つ問題があります。私はfromat "str_to_date(CONCAT(new.datavizita、 '、new.oraintrare)、'%Y /%m /%d%H:%i:%s ')を変更したい私はそれが私にエラーを与える挿入します:エラーコード:1411.日時の値が正しくない:'17/12/2008 00:24:39 'str_to_date関数 –

関連する問題