powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Данные из csv в базу!
15 сообщений из 40, страница 2 из 2
Данные из csv в базу!
    #33251965
Jekas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonНа чем была написана прога до того, как она стала сервлетом?
на Java... я ни чего не менял просто вставил код из public void main в doGet и все.
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33251967
Фотография johanna
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JekasВообще то я сисадмин по своей профессии...а прогу просто вот стала необходимость написать..Я и не претендую на звание програмиста. И на самом деле тяежло без наставника или хотябы команды, да еще и с обсолютного нуля написать все грамотно и красиво. Так что я ждал кучу критики, но вот от johanna такого замечания не ожидал...дать бы вам пару роутеров с фаевролом и попросить настроить EIGRP маршрутизацию, а потом расматривать ваше резюме на должность сетевого админа :-) и удивлятся почему этот человек ни чего не знает он же компьютерщик :). Странно я думал я в начале понятно написал кто я и что я...все поняли, а вы...

извините,совсем не хотела вас задеть. просто после того, как мне это сказали, я больше такой ошибки не делала.
все когда-то были начинающими. и не перестали ими быть, т.к. все время приходится что-то новое узнавать.
еще раз sorry, если не так выразилась.
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33251982
GMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JekasВообще то я сисадмин... Странно я думал я в начале понятно написал кто я и что я...все поняли, а вы...Зря ты так на Johann'у. Она кстати тебе ничего такого не сказала, да и вообще тебе все довольно мирно отвечали, но разве что кроме поста Timmа.

З.Ы. К модератору: В посте три раза один и тот же код, жалко трафик, может оставить только одну отформатированную копию?
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33252019
Jekas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
johannaизвините,совсем не хотела вас задеть. просто после того, как мне это сказали, я больше такой ошибки не делала.
все когда-то были начинающими. и не перестали ими быть, т.к. все время приходится что-то новое узнавать.
еще раз sorry, если не так выразилась.

Забыто :)... что то самоблюбие взыграло не нужно было внимания обращать...
Буду читать про как вы там говорили
johannaа PreparedStatement только параметры подставляй и всё. и через batch в базу.
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33252039
Jekas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GMax JekasВообще то я сисадмин... Странно я думал я в начале понятно написал кто я и что я...все поняли, а вы...Зря ты так на Johann'у. Она кстати тебе ничего такого не сказала, да и вообще тебе все довольно мирно отвечали, но разве что кроме поста Timmа.

Согласен, спорить не буду :) я вообще мирный человек, но вот иногда как замкнет..мое больное самолюбие...А timma кстати тоже в тему мотюкнулся..там действительно что либо разобрать трудно... Я когда опубликовал сам мягко говоря офигел, жалко нет кнопки редактировать. По поводу Johann'y мне не понравилось что по её словам "таких не берут в космонавты"....самолюбие одним словом...а так вобщем то я всем доволен :) Все пасиба за помощь!
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33252041
Naug
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<offtop>sticks and stones may break my bones but words will never hurt me - суть не в том том какой тон имело послание(достаточно доброжелательный нмв), а в том что замечания по стилю кода рекомендуется учесть на будущее.</offtop>

С помощью System.currentTimeMillis() можно засечь что сколько времени занимает и сравнить серверную и локальную версии.
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33252075
Jekas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все все...я понял уже давно что моя "прога" очень корява...Я б сказал больше, это пособие для начиающих, увидели подобный код, запомнили и его и зарубили на носу что так писать не нужно. Нам денег не нада - работу давай!
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33252111
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wessen Timm
Код: plaintext
бляблябля
тэги, мляТь, есть!


кто будет в этом Г разбираться без форматирования???
Скопируй их себе в IDE и разбирайся.
зачем? это лишние телодвижения.
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33253574
Jekas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вот можно вопрос про Batch.
Вот если написать
Код: plaintext
1.
2.
3.
4.
st.addBatch(запрос1);
st.addBatch(запрос2);
st.addBatch(запрос3);
execute.Batch();
то выполняются все три запроса!
а если
Код: plaintext
1.
2.
3.
4.
5.
 while (n <=  5 ){
  .....
  st.addBatch(запрос);
}
execute.Batch();
то выполняется только последний?
Почему не запоминаются все батчи?
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33253584
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если в теле цикла обьект запрос не изменяется,
то st не считает нужным его добавлять ИМХО.
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33253642
Jekas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЕсли в теле цикла обьект запрос не изменяется,
то st не считает нужным его добавлять ИМХО.
Тогда скорее всего добавлялась бы первая строка, тоесть то что записалось в первый раз...
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33253746
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jekas
Тогда скорее всего добавлялась бы первая строка, тоесть то что записалось в первый раз...


Довольно сложно делать суждения по скрытому
исходнику. Мало чево ты там насовал за многоточиями.
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33254116
Jekas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я его уже выкладывал...вот он, теперь немного отредактированный
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
 import  java.sql.Connection;
 import  java.sql.DriverManager;
 import  java.sql.Statement;
 import  java.sql.*;
 import  java.text.DecimalFormat;
 import  java.io.IOException;
 import  javax.servlet.ServletException;
 import  javax.servlet.http.HttpServlet;
 import  javax.servlet.http.HttpServletRequest;
 import  javax.servlet.http.HttpServletResponse;
 public   class  parse_to_database  extends  HttpServlet {	
	 protected   void  doPost(HttpServletRequest request, HttpServletResponse response)  throws  ServletException, IOException {
		DecimalFormat fiveDigits =  new  DecimalFormat("00000");
		String eSTMC, nPVD, nAME_TMC, eD_IZM,
		aLT_ED_IZM, tYPE_TOV, sORT_RAZMER,
		gOST_TU, nUM_DRAFT_OBOZ_GOST_TU,
		pROIZ_MOSH_GRUS, oSSOBENNOST_IZGOT,
		rEK_ZAVOD, pACKING, iZGOTOVITEL, 
		tNVED, /*NN_AKTYU_ZF, /*NN_AKSU_ZF,*/ NN_DGOK,
		nN_SSGPO, nN_EEK, nN_SHK, dESCRIPTION, oBL_ISPOL, gROUP;
		 int  npvd, num, group_int = 0  ;
		 long  nN_AKSU_ZF, nN_AKTYU_ZF;
		String nN_AKSU_STR = "", nN_AKTYU_STR = "";//для преобразования long в String.
		 try {
			 Class .forName("sun.jdbc.odbc.JdbcOdbcDriver");
			Connection con_db2 = DriverManager.getConnection("jdbc:odbc:estmc","db2admin","snortman");
			Statement st_db2 = con_db2.createStatement();
			//st_db2.executeUpdate("Create TABLE ESTMC(KOD_NPVD Varchar(10), NAME_TMC Varchar(100),ED_IZM Varchar(100), ALT_ED_IZM Varchar(20), TYPE_TOV Varchar(100), SORT_RAZMER Varchar(100), GOST_TU Varchar(100), NUM_DRAFT_OBOZ_GOST_TU Varchar(100), PROIZ_MOSH_GRUS Varchar(100), OSSOBENNOST_IZGOT Varchar(100), REK_ZAVOD Varchar(100), PACKING Varchar(100), IZGOTOVITEL Varchar(100), TNVED Varchar(100), NN_AKTYU_ZF character(100),  NN_AKSU_ZF character(100), NN_DGOK Varchar(100), NN_SSGPO Varchar(16),  NN_EEK Varchar(16), NN_SHK Varchar(16), DESCRIPTION Varchar(100), OBL_ISPOL Varchar(100))");
			
			Connection con = DriverManager.getConnection("jdbc:odbc:csv");
			Statement s = con.createStatement();
			ResultSet rs = s.executeQuery("select * from книга.csv");
			 int  count =  2 ;//номер неверной строки!
			 int  counter =  0 ;//количество выбранных строк!
			 int  kod =  00001 ;			
			 while  (rs.next()){				
					counter++;
						nPVD = rs.getString( 1 );
						 if  (nPVD ==  null ) nPVD = "";					
					
						nAME_TMC =  rs.getString( 2 );
						 if  (nAME_TMC ==  null ) nAME_TMC ="";
					
					
						eD_IZM =  rs.getString( 3 );
						 if  (eD_IZM ==  null ) eD_IZM = "";
					
						aLT_ED_IZM = rs.getString( 4 );
						 if (aLT_ED_IZM ==  null ) aLT_ED_IZM ="";
					
					
						tYPE_TOV = rs.getString( 5 );
						 if  (tYPE_TOV ==  null ) tYPE_TOV = "";						
										
						sORT_RAZMER = rs.getString( 6 );
						 if  (sORT_RAZMER ==  null ) sORT_RAZMER = "";						
					
					
						gOST_TU =  rs.getString( 7 );				
						 if  (gOST_TU ==  null ) gOST_TU ="";						
					
					
						nUM_DRAFT_OBOZ_GOST_TU = rs.getString( 8 );					
						 if (nUM_DRAFT_OBOZ_GOST_TU ==  null ) nUM_DRAFT_OBOZ_GOST_TU = "";
					
					
						pROIZ_MOSH_GRUS = rs.getString( 9 );					
						 if (pROIZ_MOSH_GRUS ==  null ) pROIZ_MOSH_GRUS ="";						
					
					
						oSSOBENNOST_IZGOT = rs.getString( 10 );					
						 if (oSSOBENNOST_IZGOT ==  null ) oSSOBENNOST_IZGOT ="";						
					
						rEK_ZAVOD = rs.getString( 11 );
						 if (rEK_ZAVOD ==  null ) rEK_ZAVOD = "";						
					
						pACKING = rs.getString( 12 );					
						 if (pACKING ==  null ) pACKING ="";						
					
					
						iZGOTOVITEL = rs.getString( 13 );				
						 if (iZGOTOVITEL ==  null ) iZGOTOVITEL ="";						
				
						tNVED = rs.getString( 14 );				
						 if (tNVED ==  null ) tNVED ="";						
				
				
						nN_AKTYU_ZF =  rs.getLong( 15 );
						 if  (nN_AKTYU_ZF ==  0 ){
							nN_AKTYU_STR = "";
						}


						nN_AKSU_ZF = rs.getLong( 16 );
						 if  (nN_AKSU_ZF ==  0 ){
							nN_AKSU_STR = "";
						}
						

					
						NN_DGOK = rs.getString( 17 );					
						 if (NN_DGOK ==  null ) NN_DGOK = "";
					
						nN_SSGPO = rs.getString( 18 );					
						 if (nN_SSGPO ==  null ) nN_SSGPO = "";
					
						nN_EEK = rs.getString( 19 );					
						 if (nN_EEK ==  null ) nN_EEK = "";
					
						nN_SHK = rs.getString( 20 );					
						 if (nN_SHK ==  null ) nN_SHK = "";						
					
						dESCRIPTION = rs.getString( 21 );					
						 if (dESCRIPTION ==  null ) dESCRIPTION = "";
					
						oBL_ISPOL = rs.getString( 22 );					
						 if (oBL_ISPOL ==  null ) oBL_ISPOL = "";						
					
						count ++;
						//num++;
						
					//счетчик
						
											
						//формирование данных для полей NUM - количество групп
						//и GROUP - группы
						 if  (nPVD.equals(""))
							gROUP = "";
						 else {						
							gROUP = nPVD.substring( 0 , 2 );
							group_int = Integer.parseInt(gROUP);}
				
						ResultSet rs_db2 = st_db2.executeQuery("Select GROUP, num from ESTMC WHERE num=(SELECT MAX(num) from ESTMC WHERE GROUP = "+group_int+")");
						 try  {
							rs_db2.next();
							 String num_str = rs_db2.getString( 2 );
							 num = Integer.parseInt(num_str);
							System.out.println(num);
							num = num +  1 ;
						} catch (SQLException e){num =  1 ;System.out.println(num);}
						eSTMC =  nPVD +fiveDigits.format(num);
						 if  (nN_AKTYU_ZF ==  0  & nN_AKSU_ZF ==  0  ){
							st_db2.executeUpdate("INSERT INTO ESTMC VALUES('"+eSTMC+"', '"+nPVD+"', '"+nAME_TMC+"', '"+eD_IZM+"', '"+aLT_ED_IZM+"', '"+tYPE_TOV+"', '"+sORT_RAZMER+"','"+gOST_TU+"', '"+nUM_DRAFT_OBOZ_GOST_TU+"', '"+pROIZ_MOSH_GRUS+"', '"+oSSOBENNOST_IZGOT+"','"+rEK_ZAVOD+"','"+pACKING+"', '"+iZGOTOVITEL+"','"+tNVED+"', '"+nN_AKTYU_STR+"', '"+nN_AKSU_STR+"', '"+NN_DGOK+"', '"+nN_SSGPO+"', '"+nN_EEK+"', '"+nN_SHK+"','"+dESCRIPTION+"','"+oBL_ISPOL+"',"+group_int+","+num+")");
						} else 
							 if  (nN_AKTYU_ZF ==  0 ){
								st_db2.addBatch("INSERT INTO ESTMC VALUES('"+eSTMC+"', '"+nPVD+"', '"+nAME_TMC+"', '"+eD_IZM+"', '"+aLT_ED_IZM+"', '"+tYPE_TOV+"', '"+sORT_RAZMER+"','"+gOST_TU+"', '"+nUM_DRAFT_OBOZ_GOST_TU+"', '"+pROIZ_MOSH_GRUS+"', '"+oSSOBENNOST_IZGOT+"','"+rEK_ZAVOD+"','"+pACKING+"', '"+iZGOTOVITEL+"','"+tNVED+"', '"+nN_AKTYU_STR+"', '"+nN_AKSU_ZF+"', '"+NN_DGOK+"', '"+nN_SSGPO+"', '"+nN_EEK+"', '"+nN_SHK+"','"+dESCRIPTION+"','"+oBL_ISPOL+"',"+group_int+", "+num+")");
							} else 
								 if  (nN_AKSU_ZF ==  0 )
									st_db2.addBatch("INSERT INTO ESTMC VALUES('"+eSTMC+"', '"+nPVD+"', '"+nAME_TMC+"', '"+eD_IZM+"', '"+aLT_ED_IZM+"', '"+tYPE_TOV+"', '"+sORT_RAZMER+"','"+gOST_TU+"', '"+nUM_DRAFT_OBOZ_GOST_TU+"', '"+pROIZ_MOSH_GRUS+"', '"+oSSOBENNOST_IZGOT+"','"+rEK_ZAVOD+"','"+pACKING+"', '"+iZGOTOVITEL+"','"+tNVED+"', '"+nN_AKTYU_ZF+"', '"+nN_AKSU_STR+"', '"+NN_DGOK+"', '"+nN_SSGPO+"', '"+nN_EEK+"', '"+nN_SHK+"','"+dESCRIPTION+"','"+oBL_ISPOL+"',"+group_int+","+num+")");
								 else 
									st_db2.addBatch("INSERT INTO ESTMC VALUES('"+eSTMC+"', '"+nPVD+"', '"+nAME_TMC+"', '"+eD_IZM+"', '"+aLT_ED_IZM+"', '"+tYPE_TOV+"', '"+sORT_RAZMER+"','"+gOST_TU+"', '"+nUM_DRAFT_OBOZ_GOST_TU+"', '"+pROIZ_MOSH_GRUS+"', '"+oSSOBENNOST_IZGOT+"','"+rEK_ZAVOD+"','"+pACKING+"', '"+iZGOTOVITEL+"','"+tNVED+"', '"+nN_AKTYU_ZF+"', '"+nN_AKSU_ZF+"', '"+NN_DGOK+"', '"+nN_SSGPO+"', '"+nN_EEK+"', '"+nN_SHK+"','"+dESCRIPTION+"','"+oBL_ISPOL+"',"+group_int+","+num+")");
						kod ++;
						
			}//while 

			st_db2.executeBatch();
		
		}
		 catch (Exception e){System.out.print("Ошибка " + e);}
	}	
}
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33254394
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
.....
if (nN_AKTYU_ZF ==  0  & nN_AKSU_ZF ==  0  ){
st_db2.executeUpdate(
....

Хм... мне кажется странным, что вы один и тот-же
обьект st_db2 используете двояко - для executeUpdate
и для addBatch одновременно. Я конечно не изощрен
в тонкостях JDBC, но мне кажется, что такое смешивание
неприемлимо.

Посмотрите примеры правильного использования пакета java.sql.* от производителя.
...
Рейтинг: 0 / 0
Данные из csv в базу!
    #33255157
Jekas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А это я просто забыл исправить...раньше был executeUpdate.
...
Рейтинг: 0 / 0
15 сообщений из 40, страница 2 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Данные из csv в базу!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]