- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
string insertSQL;
insertSQL = "INSERT INTO Authors (";
insertSQL += "au_id, au_fname, au_lname, ";
insertSQL += "phone, address, city, state, zip, contract) ";
insertSQL += "VALUES ('";
insertSQL += txtID.Text + "', '";
insertSQL += txtFirstName.Text + "', '";
insertSQL += txtLastName.Text + "', '";
insertSQL += txtPhone.Text + "', '";
insertSQL += txtAddress.Text + "', '";
insertSQL += txtCity.Text + "', '";
insertSQL += txtState.Text + "', '";
insertSQL += txtZip.Text + "', '";
insertSQL += Convert.ToInt16(chkContract.Checked) + "')";
guest 27.06.2009 15:05 # 0
guest 27.06.2009 15:13 # 0
Во-вторых, надо хотя бы StringBuilder использовать.
guest 27.06.2009 15:32 # −1
это полный пиздец
guest 10.08.2009 20:13 # −1
guest 10.08.2009 20:13 # 0
guest 27.06.2009 22:26 # 0
http://xkcd.com/327/
guest 29.06.2009 20:44 # −2
Если оптимизатор не дурак, то он это превратит в один вызов String.Concat. И это будет гораздо эффективнее, чем StringBuilder.
guest 02.07.2009 18:39 # +2
guest 12.07.2009 12:47 # 0
guest 16.07.2009 12:58 # 0
string insertSQL = @"INSERT INTO Authors
au_id, au_fname)
VALUES (@id, @fname)
>> А кто сказал что защита от инъекций нужна в данном конкретном коде?
а никто не сказал. она просто должна быть.
ещё есть такое понятие как Stored Procedure
guest 16.07.2009 20:00 # −2
Результат:
00:00:03.6318518
00:00:00.0013725
Dimarius 11.08.2009 18:44 # 0
guest 19.09.2009 09:25 # 0
В таком случае String += будет медленнее в 1,5 раза
guest 16.07.2009 20:00 # 0
Не пишите так :)
guest 24.07.2009 20:54 # 0
guest 09.09.2009 19:13 # 0
guest 29.07.2009 16:27 # 0
Некоторые долбаебы вообще пишут "ab" + "cd" через StringBuilder
guest 10.08.2009 17:03 # 0
guest 10.08.2009 18:40 # 0
хуесосы больше 100 строк никогда кода не видали.
guest 18.06.2010 10:11 # 0