Запрос к MySQL из c # возвращает System.Byte [] - PullRequest
1 голос
/ 10 мая 2010

Я использую приведенный ниже SP для возврата значения оператора Generated Insert, и он отлично работает при выполнении в браузере запросов.

Когда я пытаюсь получить значение из C #, это возвращает меня "System.Byte []" в качестве возвращаемого значения. Когда я пытаюсь получить значение из браузера запросов MySql, он возвращает мне возвращаемое значение как:

'вставить в значения admindb.accounts ("54321", "2", "karthik2", "karthik2", "1");'

Полагаю, проблема в одинарных кавычках возвращаемого значения. Это так ?

    DELIMITER $$

DROP PROCEDURE IF EXISTS `admindb`.`InsGen` $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `InsGen`(
in_db varchar(20),
in_table varchar(20),
in_ColumnName varchar(20),
in_ColumnValue varchar(20)
)
BEGIN

declare Whrs varchar(500);
declare Sels varchar(500);
declare Inserts varchar(2000);
declare tablename varchar(20);
declare ColName varchar(20);


set tablename=in_table;


# Comma separated column names - used for Select
select group_concat(concat('concat(\'"\',','ifnull(',column_name,','''')',',\'"\')'))
INTO @Sels from information_schema.columns where table_schema=in_db and table_name=tablename;


# Comma separated column names - used for Group By
select group_concat('`',column_name,'`')
INTO @Whrs from information_schema.columns where table_schema=in_db and table_name=tablename;


#Main Select Statement for fetching comma separated table values

 set @Inserts=concat("select concat('insert into ", in_db,".",tablename," values(',concat_ws(',',",@Sels,"),');')
 as MyColumn from ", in_db,".",tablename, " where ", in_ColumnName, " = " , in_ColumnValue, " group by ",@Whrs, ";");

 PREPARE Inserts FROM @Inserts;

 EXECUTE Inserts;

END $$

DELIMITER ;

1 Ответ

5 голосов
/ 18 мая 2010

Добавление этого в настройках соединения сделало свое дело: уважение бинарных флагов = ложь;

...