Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Загнать NULL в столбец / 25 сообщений из 30, страница 1 из 2
10.07.2002, 13:42:03
    #32035999
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Доброй работы!

Есть таблица
Код: plaintext
1.
2.
Create table a ( sys int NOT NULL, a1 int NULL, a2 datetime NULL)

INSERT a VALUES ( 1 , 5 , 5 )

ЕСТЬ ХП

Код: plaintext
1.
2.
3.
CREATE PROCEDURE UPD_A @sys, @a1, @a2 AS
UPDATE a SET a1=@a1, a2=@a2
WHERE sys=@sys
go



А теперь хочется запустить UPD_A со значениями 1, NULL, NULL
а она не запускается

ВОт и вопрос

КАК загнать NULL в столбец?

Наверное просто, скажите как?
...
Рейтинг: 0 / 0
10.07.2002, 13:47:02
    #32036000
alexr_r
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Не знаю, у меня все классно запускается, может
у тебя нет той строки, которую ты обновляешь
...
Рейтинг: 0 / 0
10.07.2002, 13:48:57
    #32036001
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Что значит "а она не запускается " ?

exec UPD_A 1, NULL, NULL выдает ошибку ? Какую ?
...
Рейтинг: 0 / 0
10.07.2002, 14:09:50
    #32036006
guest
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Надо указать тип данных для @sys, @a1, @a2.

Код: plaintext
1.
2.
3.
4.
5.
CREATE PROCEDURE UPD_A @sys int, @a1 int, @a2 int AS
UPDATE a SET a1=@a1, a2=@a2
WHERE sys=@sys
go

...
Рейтинг: 0 / 0
10.07.2002, 14:11:15
    #32036007
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Извините, у меня тоже уже заработала.
Ошибочка вышла...
Но это конец истории, а ноги растут от ADO, которое в странице ASP, в которой есть форма. Так вот если в форме поле не заполнено, то обработчик формы дает ошибку
Application uses a value of the wrong type for the current operation.

cmd.Parameters.Append(cmd.CreateParameter(
"a1", adDouble, adParamInput, 8, Request("f_a1")(1)));


A все остальное так и есть через ХП, в таблице поля с разрешением NULL

Ну и с датой тоже самое
Если поля на ASP cтранице заполнены, все работает как часики
ПЕреформулирую вопрос
как в ADO Загнать NULL в столбец
СПАСИБО
...
Рейтинг: 0 / 0
10.07.2002, 14:13:43
    #32036009
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
СПАСИБО,
моя невнимательность.
В реальной ХР все грамотно
...
Рейтинг: 0 / 0
10.07.2002, 14:20:32
    #32036012
Dmitri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Попробуй так

cmd.Parameters.Append(cmd.CreateParameter(
"a1", adDouble, adParamInput, 8, IIF(Request("f_a1")(1)="",NULL,Request("f_a1")(1))));
...
Рейтинг: 0 / 0
10.07.2002, 14:42:41
    #32036022
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Жарко у нас сегодня, не получается толково писать.

Правильно будет так

Результаты ввода в поля формы HTML будут потом переданы в ХП с помощью ADO.
Так вот если содержимое полей отсутсвует, то не могу передать NULL через ADO на сервер для XП для столбцов типа int, float, datetime. Для char (varchar) - могу считывать и передавать отсутствующее содержимое прямо из поля формы (но там конечно не NULL).


ХОЧУ передать NULL на сервер
КАК?

Cпасибо
...
Рейтинг: 0 / 0
10.07.2002, 14:51:01
    #32036025
VVG_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
IMHO никак. Передавай какое-нибудь левое значение, а на сервере анализируй и переприсваивай в NULL.
...
Рейтинг: 0 / 0
10.07.2002, 15:18:07
    #32036033
Глист
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
А у меня проблем с передачей null в парамерах нет. Только у меня Delphi, а не html, но ADO такое же :-) И вот в моем делфи для параметров есть функция Clear. Выглядит это как Parameters.Item[0].Clear После этого на сервер передается null. Точно так же передается null при апдейте значений полей.
...
Рейтинг: 0 / 0
10.07.2002, 15:21:13
    #32036035
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
TO Dmitry

НЕТ в ADO NULL,
НЕТ в Jscript IIF

_______________
Пока письмо писалось, в голове крутилось, что Jscript чувствителен к регистру

НЕТ в Jscript NULL, зато есть шесть типов данных, один из которых null, хотя это язык со свободной типизацией.....
Короче, так накрутили....

Все работает, всем спасибо, а писать надо null, и никак иначе, здесь это не константа, не значение, а тип данных
...
Рейтинг: 0 / 0
10.07.2002, 17:58:53
    #32036079
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
В ASP null передается, как строка 'undefined'. Нужно выполнять проверку на наличие этой строки.
Ловится примерно так.

var param=new String(Request.Form('param'));

if (param != 'undefined') {...
...
Рейтинг: 0 / 0
11.07.2002, 12:04:41
    #32036198
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
TO CAT2

Спасибо, это грамотнее чем у меня
If (param=="") param=null

Но тоже уже работает.
Проблема была написать null ловеркейзом. В других языках уважительно NULL :-)))
...
Рейтинг: 0 / 0
11.07.2002, 14:22:24
    #32036244
Dmitri
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
сорри, махнул пример на VB, да еще и с ";"
это после вавилонской башни :)
...
Рейтинг: 0 / 0
11.07.2002, 21:07:39
    #32036367
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
TO CAT2
if (param != 'undefined') {... не хочет на Javascript
Может просветите, почему
A так работает:
If (param=="") param=null

Может все-таки передает пустую строку, а не undefined?

Поймешь его.... язык, пардон, со свободной типизацией..:-)))
...
Рейтинг: 0 / 0
11.07.2002, 21:42:34
    #32036370
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
У меня, вроде, всегда возвращает 'undefined'. А фиг его значет. Можно числовые значения проверять на isNaN.
А Вы точно ловили через new String?
Это важный момент.
...
Рейтинг: 0 / 0
11.07.2002, 21:59:40
    #32036371
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
To CAT2

Да, итак и сяк
Если пишешь
if (ss==undefined) ss=null;
говорит что слова undefined не знает
если "undefined" то это уже string
если 'undefined' тоже ругается

Так что пишу
if (ss=="") ss=null;

Похоже, это выходной поток, тип поля <INPUT type="text">
даже если это числа, даты и т.п.
И в выходной поток пишется для этого поля строка нулевой длины

(По-моему...)
...
Рейтинг: 0 / 0
11.07.2002, 22:22:31
    #32036374
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Судя по help-у применение undefined требует WSH версии 5.5
У вас такая версия ?

Там же есть пример

var declared; //Declare variable.
if (declared == undefined) //Test variable.
document.write("declared has not been given a value.");

if (typeOf(notDeclared) == "undefined")
document.write("notDeclared has not been defined.");
...
Рейтинг: 0 / 0
11.07.2002, 22:42:46
    #32036376
RatTail
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Любят люди своими руками создавать себе проблемы.
ЗАЧЕМ АСПЫ НА JSCRIPT ПИШИТЕ??? ОЧЕНЬ КРУТЫЕ???
ЕСТЬ ПАРНИ ПОКРУЧЕ ВАС, А ПИШУТ АСПЫ ТОЛЬКО НА VBSCRIPT.
И проблем не имеют потом.
...
Рейтинг: 0 / 0
11.07.2002, 23:10:31
    #32036378
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Re RatTail. Я принципиально пишу только на JavaScript. И на броузере отключаю поддержку VBScript. Нету у меня доверия к этому языку. При использовании ASP это конечно глупо, но уж как могу. А круче меня в DHTML нет. А может есть.

Re Незнайка.
Проведите эксперимент.
Что там у Вас на самом деле вылетает, просмотрите через Response.Write, отображаемом на странице. Я всегда так делаю.
Мне так кажется, что это зависит от версии IIS.
К сожалению, я не большой знаток этого продукта. Все мои эксперименты были под PWS для W98 и W2k. И на том, что Вы видите в плохо работающем опросе на этом форуме.
...
Рейтинг: 0 / 0
12.07.2002, 00:44:17
    #32036383
RatTail
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Что бы Вы сказали, если бы я ляпнул: изъясняюсь только на
французском языке, потому как нет доверия к немецкому.
Чушь всё это. Плз, приведите пример Вашей крутизны в DHTML. rattail@mail.ru
...
Рейтинг: 0 / 0
12.07.2002, 01:24:02
    #32036385
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Re RatTail
Сказал бы, что правильно, нужно изъяснятся на том языке, который лучше передает авторские мысли.
Но это не ответ. Имею я право на маленький бжик?

Что я могу, можно глянуть на HTMLart.ru
...
Рейтинг: 0 / 0
12.07.2002, 01:47:15
    #32036386
RatTail
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Во, вспомнил:
1) есть на форме поле со списком и радиобаттон. Сделайте:
щёлкаем на радиобаттоне - раскрывается поле со списком.
2) сейчас на user1.7host.com/rattail/ лежит мой демотест из четырёх вопросов, на каждый вопрос я даю 7 секунд. Для контроля времени я НЕ использую response.cookies() (request.cookies()) - контроль этот с погрешностью большой (в том смысле, что мы не знаем сколько времени эта кука будет в пути). Но обдурить меня с отведённым на ответы временем Вы не сможете (по типу, "освежить" и "повторить отправку данных формы" (чтобы заново запустить скрипт на том же вопросе), нажать на кнопку "назад" и т.д.). Контроль времени - ТОЛЬКО на клиенте. Вот Вам и Ваш ДжаваСкрипт (не знал я, что Вы такой сноб (чуть не сказал - недоумок)). Попробуйте повторить мои (две) паги. Хрен там. Не получится.
Сейчас пойду смотреть HTMLart.ru, но вряд ли впечатлюсь - эффекты на меня не действуют.
...
Рейтинг: 0 / 0
12.07.2002, 01:54:10
    #32036387
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
Re RatTail
Переносим дальнейшее обсуждение в "Просто треп."
...
Рейтинг: 0 / 0
12.07.2002, 13:19:31
    #32036438
Незнайка
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Загнать NULL в столбец
To Glory
Стоит у меня IIS 5.0 и undefined не понимает, хоть как не пиши...
На самом деле вопрос уже свелся к обработке выходного потока, т.е.
POST Data:
dd=7&nn=low&ss=&kk........
Насколько я понимаю обмен между ASP формой и обработчиком формы на обработчик идет POST - байтики в некоторой 8-бит кодировке и вопрос обработки этого потока- что выделяет язык JavaScript из этого месива в отношении злополучной ss
а вариантов как я понимаю 3
интерпретировать ss= как пустую строку, unfdefined или null. НО об это нигде не написано толком.....

______
ТО RATTAIL

Вы превзошли много наук, а знаете ли ВЫ что имя определяет поведение человека, а иногда его судьбу.

Поменяете Ваш ник RATTAIL например на PUSSYCAT и жизнь заиграет новыми красками уже через 2-3 месяца

ПОПРОБУЙ, НЕ ПОЖАЛЕЕШЬ :-))))))
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Загнать NULL в столбец / 25 сообщений из 30, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]