C# Получите данные между датой до часа от таблицы MySQLC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 C# Получите данные между датой до часа от таблицы MySQL

Сообщение Anonymous »

Я пытаюсь распечатать таблицу из моей базы данных, но я хочу отфильтровать ее, используя этот код блока, я хочу распечатать данные между двумя часами, но я не знаю, это формат ввода часа правильно, вот код: < /p>
string horaI=null;
string horaF=null;
string[] hr1 = null;
string[] hr2 = null;

// on load....
dateTimePicker1.CustomFormat = "HH:mm tt"; // Only use hours and minutes
horaI = dateTimePicker1.Value.ToString("HH:mm tt");
hr1 = horaI.Split();

string connectionstring = null;
string sql = null;
string data = null;

connectionstring = "server=127.0.0.1; database=gimnasio5; uid=root; pwd=0000000000;";

sql = "SELECT IdMembresia, Nombre, Apellido, Tipo, Fecha_Inicio,
Fecha_Vencimiento, Inscripcion, Total,Impreso_Corte FROM membresia where
Impreso_Corte='No impreso' or (Fecha_Membresia between @d1 and @d2 and
Hora_Membresia between @d3 and @d4) order by gimnasio5.membresia.IdMembresia;";

var dtable = new DataTable("membresia");
var conn = new MySql.Data.MySqlClient.MySqlConnection(connectionstring);
var cmd = new MySql.Data.MySqlClient.MySqlCommand(sql, conn);
var dscmd = new MySql.Data.MySqlClient.MySqlDataAdapter(cmd);

using (conn)
{
var param = new MySql.Data.MySqlClient.MySqlParameter("@d1", MySql.Data.MySqlClient.MySqlDbType.Date);
param.Direction = ParameterDirection.Input;
param.Value = DateTime.Today;
cmd.Parameters.Add(param);
param = new MySql.Data.MySqlClient.MySqlParameter("@d2", MySql.Data.MySqlClient.MySqlDbType.Date);
param.Direction = ParameterDirection.Input;
param.Value = DateTime.Today;
cmd.Parameters.Add(param);

//The error can be here because when I use it with dates only it works fine
//but when I add this part of code, fails.

param = new MySql.Data.MySqlClient.MySqlParameter("@d3", MySql.Data.MySqlClient.MySqlDbType.Time);
param.Direction = ParameterDirection.Input;
param.Value = hr1[0];
//Convert.ToDateTime(hr1[0]).ToString("HH:mm");
cmd.Parameters.Add(param);
param = new MySql.Data.MySqlClient.MySqlParameter("@d4", MySql.Data.MySqlClient.MySqlDbType.Time);
param.Direction = ParameterDirection.Input;
param.Value = hr2[0];
//Convert.ToDateTime(hr2[0]).ToString("HH:mm");
cmd.Parameters.Add(param);

conn.Open();
dscmd.Fill(dtable);
}
< /code>
Но я получаю и ошибку: < /p>

Исключение типа 'mysql.data.mysqlclient.mysqlexception' произошло в mysql.data.dll, но не обрабатывался в коде пользователя
Дополнительная информация: фатальная ошибка, встречающаяся во время выполнения команды. /> < /blockquote>
Я получаю ошибку, когда пытаюсь заполнить объект mysqladapter: < /p>

dscmd.fill(dtable) ; < /p>
< /blockquote>
Я думал, что это был формат, который я ввожу время, но, как вы можете видеть в коде, который я использую для форм для него, но ни один из обоих работает и возвращает тот же код ошибки.
Мой столбец в базе данных MySQL установлен для сохранения типа времени, поэтому проблема нет в таблице. < /p>
Час в База данных сохраняется как эта, столбец - тип времени: < /p>

12:03:00 < /p>
< /blockquote>

21:34:00 < /p>
< /blockquote>
Структура таблицы < /p>
CREATE TABLE `membresia` (
`IdMembresia` int(11) NOT NULL AUTO_INCREMENT,
`Nombre` varchar(100) NOT NULL,
`Apellido` varchar(100) NOT NULL,
`Tipo` varchar(100) NOT NULL,
`Fecha_Inicio` date NOT NULL,
`Fecha_Vencimiento` date NOT NULL,
`Inscripcion` varchar(20) DEFAULT NULL,
`Estado_membresia` varchar(15) NOT NULL,
`Fecha_modificacion` date NOT NULL,
`Total` decimal(10,2) NOT NULL,
`Nota` varchar(200) DEFAULT NULL,
`Fecha_Membresia` date NOT NULL,
`Impreso_Corte` varchar(20) NOT NULL,
`IdSocio` int(11) DEFAULT NULL,
`Hora_Membresia` time NOT NULL,
PRIMARY KEY (`IdMembresia`),
KEY `L_Id2` (`IdSocio`),
KEY `F_Nombre` (`Nombre`),
KEY `F_Apelli` (`Apellido`),
CONSTRAINT `F_Apelli` FOREIGN KEY (`Apellido`) REFERENCES `socios` (`Apellido`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `F_Nombre` FOREIGN KEY (`Nombre`) REFERENCES `socios` (`Nombre`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `L_Id2` FOREIGN KEY (`IdSocio`) REFERENCES `socios` (`IdSocio`) ON DELETE CASCADE ON UPDATE CASCADE)
ENGINE=InnoDB DEFAULT CHARSET=utf8;


Подробнее здесь: https://stackoverflow.com/questions/363 ... ysql-table
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Python Systemd Timer каждые 2,5 часа после часа, но он работает каждые 2 часа
    Anonymous » » в форуме Python
    0 Ответы
    46 Просмотры
    Последнее сообщение Anonymous
  • Python Systemd Timer каждые 2,5 часа после часа, но он работает каждые 2 часа
    Anonymous » » в форуме Python
    0 Ответы
    39 Просмотры
    Последнее сообщение Anonymous
  • Python Systemd Timer каждые 2,5 часа после часа, но он работает каждые 2 часа
    Anonymous » » в форуме Python
    0 Ответы
    46 Просмотры
    Последнее сообщение Anonymous
  • C ++ Дни между датой и сегодняшней датой
    Anonymous » » в форуме C++
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Получите заказы woocommerce, сделанные 4 часа назад - Wordpress
    Anonymous » » в форуме Php
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»