Member 12349103 Ответов: 2

Sqlite сохраняет дату только из datetimepicker, если она выбрана


У меня есть Winform с базой данных SQlite, мне нужно сохранить дату из DateTimPicker только в том случае, если она выбрана и не может ее понять. В настоящее время он сохраняет то, что находится в сборщике даты и времени.


string txtQuery = "insert into Roster (Tech_Role, Employee, Picture, Employee_Number, Shift, Zone, Supervisor, On_Board_Date_into_Material_Handling,"
            + "Basic_Skills, TCAT_Certifaction, Basic_Skills_Fork_Pass, Basic_Skills_Tug_Pass, Regional_Training, Job_Observation_Training, " +
            "Advance_Training, Previous_Safety_Training," + "Current_Safety_Training, MH_Employee_Active   )values('"
              + cb_Role.Text + "', '" + tb_Name.Text + "', '" + pictureBox1.Text + "' ,'"
              + tb_Employee_Number.Text + "', '" + cb_Shift.Text + "', '" + tb_Zone.Text + "', '"
              + tb_Supervisor.Text + "','" + dateTimePicker1.Text + "','" + dateTimePicker7.Text +
              "','" + cb_TCAT.Text + "','" + cb_Fork.Text + "','" + cb_Tug.Text + "','"
              + dateTimePicker2.Text + "','" + dateTimePicker3.Text + "','" + dateTimePicker4.Text + "'" +
              ",'" + dateTimePicker5.Text + "','" + dateTimePicker6.Text + "','" + cb_Active.Text + "')";


Что я уже пробовал:

Чтобы многие коды перечислить, и дни поиска в Сети.

Richard MacCutchan

Пока вы не покажете нам код, который не работает, и не объясните точно, что происходит, помочь невозможно.

Member 12349103

строки txtQuery = "включить в реестр (Tech_Role, сотрудник, картинка, Employee_Number, переход, зона, руководитель, On_Board_Date_into_Material_Handling,"
+ "Basic_Skills, TCAT_Certifaction, Basic_Skills_Fork_Pass, Basic_Skills_Tug_Pass, Regional_Training, Job_Observation_Training", +
"Advance_Training, Previous_Safety_Training," + "Current_Safety_Training, MH_Employee_Active )значения('"
+ cb_Role.Текст + "', '" + tb_Name.Текст + "', '" + имя picturebox1.Текст + "' ,'"
+ tb_Employee_Number.Текст + "', '" + cb_Shift.Текст + "', '" + tb_Zone.Текст + "', '"
+ tb_Supervisor.Текст + "', '" + dateTimePicker1.Текст + "', '" + dateTimePicker7.Текст +
"', '" + cb_TCAT.Текст + "', '" + cb_Fork.Текст + "', '" + cb_Tug.Текст + "','"
+ dateTimePicker2.Text + "','" + dateTimePicker3.Текст + "', '" + dateTimePicker4.Текст + "'" +
",'" + dateTimePicker5.Text + "','" + dateTimePicker6.Text + "', '" + cb_Active.Текст + "')";

Patrice T

Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.
Чтобы каждый мог обратить внимание на эту информацию.

#realJSOP

чувак, не делай этого таким образом. Ваш код уязвим для атак sql-инъекций

2 Ответов

Рейтинг:
2

Patrice T

Цитата:
У меня есть Winform с базой данных SQlite, мне нужно сохранить дату из DateTimPicker только в том случае, если она выбрана и не может ее понять. В настоящее время он сохраняет то, что находится в сборщике даты и времени.

совет: перестаньте комбинировать простые задачи с суперзадачами.
Переменные-это связующее звено между различными частями вашего приложения.
Ваша проблема заключается либо в получении значения из DateTimPicker в переменную, либо в сохранении значения переменной в SQL.
Цитата:
Чтобы многие коды перечислить, и дни поиска в Сети.

Общее решение состоит в том, чтобы сделать игрушечное приложение, которое показывает проблему, показать свернутый код не должен быть более 20-30 строк кода.


Рейтинг:
0

#realJSOP

Как уже говорилось, Мы не сможем оказать вам конкретную помощь, если вы не поделитесь своим кодом. Но...

0) если данные являются "новыми", Вы должны установить дату на разумное значение по умолчанию, чтобы сохранить ее, если она не выбрана, не было проблемой.

1) дата всегда должна быть в сохраняемом состоянии. То, что он не изменился, не означает, что он недействителен.

2) Если вы настаиваете на том, чтобы идти по этому пути, вы можете создать переменную bool, которая указывает, когда пользователь выбирает новую дату, и установить ее в false, когда создается экземпляр формы, и реагировать на одно из событий datepicker, чтобы указать, что пользователь изменил ее. В этот момент вы можете настроить свой код сохранения на сохранение даты только в том случае, если ваша переменная bool имеет значение true. Опять же, это плохой способ сделать это.


Member 12349103

Я добавил свою кнопку Сохранить, когда я ввожу текст в текстовое поле и не выбираю средство выбора даты и времени, оно сохраняет дату.

#realJSOP

Настройте свой Datepicker, чтобы заставить пользователя фактически выбрать dat с помощью средства выбора.

Member 12349103

Вот чего я никак не могу понять.