Ничего себе, эта проблема популярна. Это основано на недоразумении в vertical-align
свойство. Эта превосходная статья объясняет его:
Понимание vertical-align
, или, "Как (Не) Вертикально Центрировать Содержание" Gavin Kistner.
“How для центрирования в CSS” является большим веб-инструментом, который помогает найти необходимый CSS, центрируя атрибуты для различных ситуаций.
Вкратце (и предотвратить гниль ссылки) глоток> :
vertical-align: middle
. Однако “context” isn’t общая высота родительского контейнера, it’s высота текстовой строки they’re в. jsfiddle пример absolute
и определить ее height
, margin-top
и top
положение. jsfiddle пример line-height
для заполнения его высоты. Этот метод довольно универсален, по моему опыту. jsfiddle пример Если вы Для построения строк и проверки / защиты от SQL-инъекций вы можете просто использовать слово null в своей строке SQL или оператор EXEC с разделителями-запятыми.
'calling a stored proc.
strSQL = "EXEC UpdateCustomer @CustomerID=" & iCustomerID + ",@PhoneNumber=null"
Вот как использовать null в созданной вручную строке для отправки в БД
strSQL = "UPDATE Customer SET PhoneNumber = null WHERE CustomerID = " + iCustomerID
Передача null в хранимую процедуру с использованием объекта команды.
Set cn = CreateObject("ADODB.Connection")
Set cmd = CreateObject("ADODB.Command")
cn.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Data Source=.\Test"
Set cmd.ActiveConnection = cn
cmd.CommandText = "TestTable.sp_ModifyData"
cmd.CommandType = 4
cmd.NamedParameters = True
set cnParam = cmd.CreateParameter("@RowID",3,3,,-1)
cmd.Parameters.Append cnParam
set cnParam = cmd.CreateParameter("@AddRemoveModify",3,1,,0)
cmd.Parameters.Append cnParam
set cnParam = cmd.CreateParameter("@Value1",3,1,,0)
cmd.Parameters.Append cnParam
set cnParam = cmd.CreateParameter("@Value2",8,1,-1,"Test")
cmd.Parameters.Append cnParam
set cnParam = cmd.CreateParameter("@value3",5,1,,null)
cmd.Parameters.Append cnParam
set cnParam = cmd.CreateParameter("@value4",5,1,,0)
cmd.Parameters.Append cnParam
set cnParam = cmd.CreateParameter("@value5",8,1,-1,"")
cmd.Parameters.Append cnParam
cmd.Execute
cn.Close
Set cmd = Nothing
Set cn = Nothing
Извините, я не особо задумывался над присвоением имен полям в моей базе данных.
Попробуйте vbNullString или vbNullChar. Вам также может понадобиться adParamNullable.
set cnParam = cmd.CreateParameter("@value3",5,1,,vbNullString)
cnParam.Attributes = adParamNullable
cmd.Parameters.Append cnParam
Обновление:
На самом деле это сработало для меня:
set cnParam = cmd.CreateParameter("@value3",5,1,,Null)
cnParam.Attributes = adParamNullable
cmd.Parameters.Append cnParam
Да, это тоже сработало:
set cnParam = cmd.CreateParameter("@value3",5,1,,Null)
cmd.Parameters.Append cnParam
Пойдем, набери.