Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> bind 
:(
    Опции темы
box
Дата 26.8.2008, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 27.2.2007

Репутация: нет
Всего: 0



 как инициализировать сторед процедур с входными параметрами в двоичном коде ?
Код

      $data=decbin(hexdec("46f04700002815152000000000000000"));
      $char='53';
      $proc = mssql_init('cabal_tool_SetInventory',$db);
      mssql_bind($proc,'@CharacterIdx',$char,SQLVARCHAR);
      mssql_bind($proc,'@Data',$data,SQLVARCHAR);
      mssql_execute($proc);

PM MAIL   Вверх
Itsys
Дата 26.8.2008, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 1
Всего: 34



Вопрос не понятен, и причем здесь MS SQL? 
Двоичный параметр, это таже строка, состоящая из 0 и 1, в чем проблема?
PM MAIL WWW Skype   Вверх
box
Дата 27.8.2008, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 27.2.2007

Репутация: нет
Всего: 0



проблемма в том что при типе данных SQLVARCHAR невозможно вставить данные в двоичном коде а при SQLINT4 не весь код попадает в базу .
PM MAIL   Вверх
Itsys
Дата 27.8.2008, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 1
Всего: 34



В самой хранимке какой тип входящих данных объявлен?

Код процедуры в студию + струткутуру таблицы
PM MAIL WWW Skype   Вверх
box
Дата 28.8.2008, 00:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 506
Регистрация: 27.2.2007

Репутация: нет
Всего: 0



проблемма в том когда я выполняю скрипт :
Код

function hex2bin($data) { return pack('H*', $data); }
$dta='440047000028000000000301896B4685';
$data=$dta.'440047000028000000000502896B4685';
$data=hex2bin($data);
$char='53';
$proc = mssql_init('cabal_tool_Setinventory',$db);
mssql_bind($proc,'@Characteridx',$char,SQLVARCHAR);
mssql_bind($proc,'@Data',$data,SQLINT4);
mssql_execute($proc);

и потом извлекаю данные обратно , для проверки , то там находится совсем не то что было внесено !
Вот процедура к которой идет обращение :
Код

CREATE PROCEDURE cabal_tool_SetInventory( @CharacterIdx int, @Data varbinary(4096) )
AS
BEGIN
BEGIN TRAN
IF @Data = null
BEGIN
DELETE cabal_inventory_table
WHERE CharacterIdx = @CharacterIdx
END
ELSE
BEGIN
IF NOT EXISTS( SELECT CharacterIdx
FROM cabal_inventory_table
WHERE CharacterIdx = @CharacterIdx )
BEGIN
INSERT cabal_inventory_table (CharacterIdx, Data)
VALUES ( @CharacterIdx, @Data )
END
ELSE
BEGIN
UPDATE cabal_inventory_table
SET Data = @Data
WHERE CharacterIdx = @CharacterIdx
END
END
COMMIT TRAN
END

GO


А какой-же параметр тут применить ?
я перепробовал все из возможных :
SQLTEXT, SQLVARCHAR, SQLCHAR, SQLINT1, SQLINT2, SQLINT4, SQLBIT, SQLFLT4, SQLFLT8, SQLFLTN.
и неработает .
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS SQL"
Akina

Akina

Запрещается!

Публиковать ссылки и обсуждать взлом чего бы то ни было.

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы составления неспецифических запросов рассматриваются здесь
  • Используйте теги [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS SQL Server | Следующая тема »


 




[ Время генерации скрипта: 0.0442 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.